2017-06-29 8 views
0

特定のメソッドを探すために.csファイルを解析する必要があります。 たとえば、 "X"という名前のメソッドが呼び出されると、アナライザはそれを検出する必要があります。Roslynでメソッド呼び出しアナライザを作成する

この特定のノードがメソッドであることをどのように検出できますか?

ありがとうございます!あなたが現在の構文ノードは、セマンティックモデルを使用せずに、あなたの方法であると判断することができ、また

// node – is your current syntax node 
// semanticalModel – is your semantical model 
ISymbol symbol = semanticModel.GetSymbolInfo(node).Symbol ?? semanticModel.GetDeclaredSymbol(node); 
if(symbol.Kind == SymbolKind.Method) 
{ 
    // methodName – is a method's name that you are looking 
    if((symbol as IMethodSymbol).Name == methodName) 
    { 
     // you find your method 
    } 
} 

が、それはです:

答えて

0

あなたはそれのための構文ノードとセマンティックモデルを持っている場合、あなたはこれを試すことができます道のりより少し難しいです。

関連する問題