我已经用clang实现了一个AST resursive visitor,我想区分变量声明。我想要知道变量声明是全局的还是变量声明是否包含函数体。两个人都会为我做这个工作。 有什么想法吗?
谢谢。
答案 0 :(得分:1)
您可以在AST Visiter中访问VarDecl,然后您可能想要使用isLocalVarDecl(),isLocalVarDeclOrParm(),isFunctionOrMethodVarDecl(),isStaticDataMember(),hasLocalStorage()等功能,或者来自VarDecl的Api hasGlobalStorage()的here。