1

Я пытаюсь работать над AST из нескольких файлов с помощью RecursiveASTVisitor и нашел этот метод buildASTs от ClangTool, который называется Create an AST for each file specified in the command line and append them to ASTs.Объединение Clang AST

Однако я не могу найти примеры использования или руководства.

У кого-нибудь есть опыт сочетания АСТ из нескольких источников?

Что я сделал сейчас это

ClangTool Tool(OptionsParser.getCompilations(), OptionsParser.getSourcePathList()); 
std::vector<std::unique_ptr<clang::ASTUnit>> AST; 
Tool.buildASTs(AST); 

Но я не знаю, как приступить к анализу отсюда ..

+0

Где вы можете найти, как это сделать? Даже я столкнулся с той же проблемой. –

ответ

0

Если вам нужно объединить ASTS, вы можете объединить части АСТ в другой, используя clang :: ASTImporter.

Однако наиболее распространенной стратегией является анализ каждого АСТ независимо друг от друга, а затем объединение результатов вместе.