2012-04-23 8 views
5

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"; 
} 

risposta

2

Non c'è niente di meglio nella CTP corrente, ma questo è il feedback che abbiamo ascoltato, e abbiamo un piano per affrontare in futuro.

+0

Grazie per la conferma. Ugh :( – Jay

Problemi correlati