【发布时间】:2023-03-04 18:49:01
【问题描述】:
假设我有一个这样的变量声明:
std::vector<MyType> myVector(1);
这在 Clang AST 中表示为 CXXConstructExpr。我有一个匹配器可以找到这个CXXConstructExpr,但我想从中提取MyType 的decl。
我尝试了各种方法,但似乎没有任何效果:
const CXXConstructExpr* construct = Result.Nodes.getNodeAs<CXXConstructExpr>("expr");
construct->getConstructor()->getTemplateSpecializationArgs() // Always nullptr
construct->getConstructor()->getParent() // Seems to lose the template parameters
construct->getConstructor()->getDescribedTemplate() // Always nullptr
【问题讨论】:
标签: c++ clang abstract-syntax-tree