私はAST APIとjavaで作業しており、タイプバインディングを使用してCompilation Unitを作成しようとしています。私はデバッグモードでこのコードを実行するとcompiUnit
を検査するとき、私はcompiUnit.ast.resolver.isRecoveringBindings
が偽であることがわかり、残念ながらタイプバインディングを使用したコンパイルユニットの作成
private static CompilationUnit parse(ICompilationUnit unit) {
ASTParser parser = ASTParser.newParser(AST.JLS3);
parser.setKind(ASTParser.K_COMPILATION_UNIT);
parser.setSource(unit);
parser.setResolveBindings(true);
CompilationUnit compiUnit = (CompilationUnit) parser.createAST(null);
return compiUnit;
}
:私は、次のコードを書きました。
私はそれが指定されているので、それはtrue
でない理由を誰も考えることができますか?
ありがとう
まず、その情報は、何が起こっているのかをよく理解するために本当に役立ちました。 新しい質問が残っています:リカバリを有効にすると、 'ASTNode.copySubtree(asttree、astnode) 'を使用した結果、' ASTNode'のバインディングを取得できますか? – hizki
私は分かりません。なぜあなたはそれを試してみませんか? :) –