1
私はSyntaxRewriter
を書いていますので、SyntaxNode
が私の訪問方法(実際にはIdentifierNameSyntax
)に入っています。SyntaxNodeまたはSyntaxTreeからドキュメントまたはコンパイルを取得するには?
私がしなければならないことは、識別子が表すシンボルを調べることです。これはSemanticModel
を使って行うことができます。
私が理解しているように、私はDocument
またはCompilation
からSemanticModel
を得ることができます。
したがって、理想的には、構文ノードからDocument
またはCompilation
に移動したいと考えています。
これは可能ですか?
'SemanticModel'を' SyntaxRewriter'のコンストラクタに渡すことはできますか? – svick
はい、それは私が現在やっていることです。ちょうどもっときれいな方法があるかどうか疑問に思った。私はSyntaxTreesが親のDocument/Compiliationsを持っているとは限りませんが、まだそれがあると認識しています:もしそうであれば、それにナビゲートできるのは良いことです。 – Schneider
この関連する質問への回答は他人にも役立つかもしれません:http://stackoverflow.com/questions/37339130/how-to-getsemanticmodel-for-any-syntax-tree-in-referenced-projects-of-project-co/37352848 – Schneider