2017-02-21 13 views
0

私のeclipseプラグインをさらに開発するための入力としてメソッド名が与えられているので、IMethodを見つける方法を探しています。Javaのメソッド名からIMethodを取得

これを行う方法を理解できませんでした。

誰かが正しい経路で私に指示してください。

+0

メソッド名が一意でない、同じ名前のメソッドは、同じクラス(過負荷)、または他のクラスで存在することができます。プラグインの入力として他に何を渡しますか? –

+0

お返事ありがとうございます。私は他のメソッドと区別するためにパラメータと共にメソッド名を与えることができます –

答えて

0

二つのアプローチが存在することができます:

  1. あなたは、MethodDeclarationノードを訪問するASTVisitorパターンを使用して名前と引数のチェックを行い、そして結合を解決することにより、それらからIMethodを得ることができます。以下の記事参照してください:

  2. をコンパイル単位とループからIMethodsを通じてIType Sを取得し、必要なものを見つけるために名前と引数をチェックします。

    IType [] typeDeclarationList = unit.getTypes(); 
    for (IType typeDeclaration : typeDeclarationList) { 
        // Get methods under each type declaration. 
        IMethod [] methodList = typeDeclaration.getMethods(); 
        for (IMethod method : methodList) { 
         // Logic here. 
        } 
    } 
    
関連する問題