如何在libclang中刷新AST

时间:2013-05-30 14:12:26

标签: compiler-construction llvm clang libclang

我的代码访问libclang生成的AST,并在其中插入一些代码。我想获得新的AST,同时我想避免将代码写入文件,libclang中是否有任何API来执行此操作?

1 个答案:

答案 0 :(得分:2)

您可以使用变通方法 - CXUnsavedFiles。只需将更改的文件放在内存中,将其添加到CXUnsavedFiles并传递给clang_reparseTranslationUnit。

您还可以查看Rewriter和其他非稳定的clang API。