具有初始化和成员函数调用的类实例的ASTMatcher

时间:2019-01-19 18:26:16

标签: clang-ast-matchers

我很难获得以下实体的ASTMatcher。第一个是类的实例。

import datetime
x = datetime.datetime.strptime('2018-1-1', "%Y-%m-%d")

理想情况下,我可以有一个可以匹配两个实例的匹配器。

第二个是捕获成员函数Vec v1(1.0,1.0,1.0); Vec v2(2.0,2.0,2.0); 及其隐式参数vec_add和显式参数v1的调用。

v2

1 个答案:

答案 0 :(得分:1)

我想出了第一种解决方案:

declStmt(containsDeclaration(0, varDecl(hasInitializer(cxxConstructExpr(argumentCountIs(3))))))

第二种解决方案是

callExpr(callee(namedDecl(hasName("vec_add"))))

现在,我有点知道如何考虑设计了。 敬请关注我的博客!