呼び出し元メソッドによって宣言されたパラメーターを利用する MethodInvocation 式を特定する方法を探しています。
例えば:
public void caller(int param1, int param2){
m1(param1)
m2(param2)
m3(param1, m4(param2))
}
m1 メソッド呼び出しが「param1」を使用したこと、m2 メソッド呼び出しが「param2」を使用したこと、および m3 メソッド呼び出しが「param1」と「param2」を使用したことを識別できるようにしたいと考えています。ASTVisitor でこれを行うことはできますか? MethodDeclaration.parameters() は SingleVariableDeclaration のリストを提供し、MethodInvocation.arguments() は Expression のリストを提供するため、うまくいきませんでした。SingleVariableDeclaration と Expression の間のリンクが表示されません。名前で分析することもできますが、それはあまりにも単純すぎます。