我又有了 Java AST,它是从
public class Test {
String o = new String("hh");
public void wrong1() {
synchronized(o) {
// huhu
}
}
}
我尝试创建一个 XPath 查询,该查询查找使用定义的字符串变量的同步块o
。
正如上面的定义,它是 SynchronizedStatement 的祖先,但我没有让它工作
//SynchronizedStatement[Expression/PrimaryExpression/PrimaryPrefix/Name[@Image=ancestor::ClassOrInterfaceBody[ClassOrInterfaceBodyDeclaration/FieldVariableDeclaratorId/@Image]]]
我知道这/SynchronizedStatement[Expression/PrimaryExpression/PrimaryPrefix/Name[@Image=
是正确的,我的问题是如何解决祖先 ClassOrInterfaceBody 部分。
希望它清楚我的意思;-)
谢谢