1

我正在玩ITypeBinding我在调用由 Java 项目制作resolveBinding()ASTNodeASTASTParser和 K_COMPILATION_UNIT 时得到的东西。

例如,我已经解决了一个 ITypeBinding java.lang.String,但是缺少合成方法(compareTo(Object)在这种情况下)。ITypeBinding 的文档指出合成方法可能存在也可能不存在,但 isSynthetic 方法建议应该有某种方式来说服 ITypeBinding 也包含合成方法。

如果我IType通过调用ITypeBinding.getJavaElement()它得到一个包含我正在寻找的合成方法,但如果我可以直接从 ITypeBinding 获取它们会更容易。

有任何想法吗?

4

1 回答 1

3

我通过查看显式跳过合成方法的实现找到了答案——首先在从编译器 AST 恢复方法时跳过它们,然后总是从 isSynthetic 方法的实现中返回 false——Eclipse 3.7 就是这样。

于 2012-01-26T18:01:40.610 回答