【发布时间】:2017-01-18 10:52:42
【问题描述】:
我有以下递归 AST 访问者实现。
class ExampleVisitor : public clang::RecursiveASTVisitor<ExampleVisitor>{
private:
clang::ASTContext* ast_context_; // used for getting additional AST info
public:
explicit ExampleVisitor(clang::CompilerInstance* ci)
: ast_context_(&(ci->getASTContext())) // initialize private members
virtual bool VisitFunctionDecl(clang::FunctionDecl* func)
{
numFunctions++;
foo(func);
return true;
}};
函数 foo 打印给定输入文件的声明函数的名称。
在这个实现中,foo 打印输入文件中声明的函数,并从包含的头文件中转储所有函数声明。如何修改此代码以仅打印给定输入文件中声明的函数?
【问题讨论】: