Я всю жизнь код генерю как лох - питон скриптами, без AST, а тупо собирая строчки текста по кусочкам :) :)
не про кодген, но примеры понравились как работать с api https://github.com/banach-space/clang-tutor#overview-of-the-plugins
программно писать код в AST для clang было больно, когда я пробовал года полтора назад. вот так выглядело return a + b; в качестве тела функции. в итоге вернулся к строкам https://i.imgur.com/c55TX59.png
можно красивых обёрток навернуть
да, но для моей задачи писать обертки было слишком, тем более что я не хотел особо завязываться на конкретную версию clang'а и ast api
ну чтобы прям отвязаться от реализации надо ещё промежуточный какой-то слой делать, под каждую реализацию ast, если цель просто сделать сложение, то прям оверкил )
Ну, вот генерация enum-ов это оверкилл? :)
Стандарт уже предоставляет такой промежуточный слой в виде языка программирования С++. =)
Обсуждают сегодня