我在编译单元中添加了一堆节点,现在我想查找与给定符号相对应的语法节点:
var compilation = Compilation.Create("HelloWorld")
.AddSyntaxTrees(SyntaxTree.ParseCompilationUnit("<some namespace>"));
ISymbol symbol = // some arbitrary symbol, e.g. a method whose syntax node I had
compilation.GlobalNamespace.GetNamespaceMembers().First();
SyntaxToken token = ???; // how do I get the token for that symbol?
如何获得该符号的 token ?注意:
我的目标是能够从它的
MethodSymbol
获得每种方法的方法体。 最佳答案
使用ISymbol.DeclaringSyntaxReferences
。