2

我的代码访问了 libclang 生成的 AST,并在其中插入了一些代码。我想获得新的 AST,同时我想避免将代码写入文件,libclang 中有没有 api 可以做到这一点?

4

1 回答 1

3

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

你也可以看看 Rewriter 和 clang 的其他非稳定 API。

于 2013-05-30T16:19:12.680 回答