Se ho un simbolo semantico consente di dire un parametro che arriva in un metodo, Posso sapere come tornare al nodo di sintassi di questo simbolo?È possibile passare da un simbolo semantico a un nodo di una struttura di sintassi utilizzando Roslyn?
Nel codice qui sotto Diciamo che ho una maniglia sul Identifier "param" nella struttura di sintassi dalla param = "TEST"
, ho invertire i al modello semantico per determinare l'OriginalDefinition di param, che mi porta al string param
nel metodo dichiarazione. Ora voglio tornare all'albero di sintassi e andare al nodo di definizione originale.
sono stato in grado di fare questo con quello che io considero un hack var token = tree.Root.FindToken(origNode.Locations[0].SourceSpan.Start).Parent;
Esiste un modo migliore per fare questo? Forse qualcosa di simile allo GetSemanticInfo()
ma per l'albero della sintassi?
private void DoSomething(string param)
{
param = "TEST";
}
Grazie per la conferma. Ugh :( – Jay