5

セマンティック シンボルがある場合、メソッドにパラメータが渡されるとします。このシンボルの構文ノードに戻るにはどうすればよいでしょうか?

以下のコードでは、 から構文ツリーの「param」識別子のハンドルを持っているとしますparam = "TEST"。セマンティック モデルに切り替えてstring param、メソッド宣言の に移動する param の OriginalDefinition を決定します。ここで、構文ツリーに戻って、元の定義ノードに移動します。

私はハックと見なすものでこれを行うことができましたvar token = tree.Root.FindToken(origNode.Locations[0].SourceSpan.Start).Parent;

これを行うより良い方法はありますか?GetSemanticInfo()おそらく、シンタックス ツリー以外は似たようなものでしょうか。

private void DoSomething(string param)
{
  param = "TEST";
}
4

1 に答える 1

2

現在の CTP には改善点はありませんが、これは私たちが聞いたフィードバックであり、将来的に対処する計画があります。

于 2012-04-23T18:26:31.660 に答える