SyntaxNode クラス

定義

構文ツリー内の非ターミナル ノードを表します。 これは、 と VisualBasicSyntaxNodeに依存CSharpSyntaxNodeしない言語です。

public ref class SyntaxNode abstract
[System.Diagnostics.DebuggerDisplay("{GetDebuggerDisplay(), nq}")]
public abstract class SyntaxNode
[<System.Diagnostics.DebuggerDisplay("{GetDebuggerDisplay(), nq}")>]
type SyntaxNode = class
Public MustInherit Class SyntaxNode
継承
SyntaxNode
派生
属性

プロパティ

ContainsAnnotations

このノードまたはサブ ノード、トークン、またはトリビアに注釈があるかどうかを決定します。

ContainsDiagnostics

このノード、またはその子孫ノード、トークン、またはトリビアに診断があるかどうかを判断します。

ContainsDirectives

このノードに子孫プリプロセッサ ディレクティブがあるかどうかを判断します。

ContainsSkippedText

このノードに、スキップされた子孫テキストがあるかどうかを判断します。

FullSpan

先頭と末尾のトリビアを含む、このノードの絶対スパン (文字単位)。

HasLeadingTrivia

このノードに先行するトリビアがあるかどうかを判断します。

HasStructuredTrivia

このノードの子孫トリビアが構造化されているかどうかを判断します。

HasTrailingTrivia

このノードに末尾のトリビアがあるかどうかを判断します。

IsMissing

ノードが、ソース コードから実際に解析された言語コンストラクトを表すかどうかを判断します。 不足しているノードは、エラー シナリオではパーサーによって生成され、正常にコンパイルするためにソース コードに存在するはずのコンストラクトを表しますが、実際には見つかりません。

IsStructuredTrivia

このノードが構造化トリビアを表すかどうかを判断します。

KindText

構文ツリー内の非ターミナル ノードを表します。 これは、 と VisualBasicSyntaxNodeに依存CSharpSyntaxNodeしない言語です。

Language

このノードの構文である言語名。

Parent

コレクション内にこのノードを含むノード ChildNodes()

ParentTrivia

構文ツリー内の非ターミナル ノードを表します。 これは、 と VisualBasicSyntaxNodeに依存CSharpSyntaxNodeしない言語です。

RawKind

このノードの言語固有の種類を表す整数。

Span

先頭と末尾のトリビアを含まない、このノードの絶対スパン (文字単位)。

SpanStart

にアクセスするの StartSpan同じです。

SyntaxTree

ノードを SyntaxTree 所有する を返します。

SyntaxTreeCore

ノードを所有する SyntaxTree を返します。 ノードがツリーに属していない場合は、ノードが生成されます。

メソッド

Ancestors(Boolean)

先祖ノードの一覧を取得します

AncestorsAndSelf(Boolean)

先祖ノード (このノードを含む) の一覧を取得します

ChildNodes()

プレフィックス ドキュメントの順序で子ノードの一覧を取得します。

ChildNodesAndTokens()

このノードの子ノードとトークンの一覧。各要素は SyntaxNodeOrToken インスタンスです。

ChildThatContainsPosition(Int32)

構文ツリー内の非ターミナル ノードを表します。 これは、 と VisualBasicSyntaxNodeに依存CSharpSyntaxNodeしない言語です。

ChildTokens()

このノードの直接の子トークンの一覧を取得します。

Contains(SyntaxNode)

指定したノードがこのノードの子孫であるかどうかを判断します。 現在のノードの場合は true を返します。

ContainsDirective(Int32)

このノードに、一致する種類のディレクティブ (、#if#nullable、など) が含まれている場合は true を返します。

CopyAnnotationsTo<T>(T)

この SyntaxNode インスタンスからすべての SyntaxAnnotation をコピーし、 に基づいて新しいインスタンスに nodeアタッチします。

DescendantNodes(Func<SyntaxNode,Boolean>, Boolean)

プレフィックス ドキュメントの順序で子孫ノードの一覧を取得します。

DescendantNodes(TextSpan, Func<SyntaxNode,Boolean>, Boolean)

プレフィックス ドキュメントの順序で子孫ノードの一覧を取得します。

DescendantNodesAndSelf(Func<SyntaxNode,Boolean>, Boolean)

プレフィックス ドキュメントの順序で子孫ノード (このノードを含む) の一覧を取得します。

DescendantNodesAndSelf(TextSpan, Func<SyntaxNode,Boolean>, Boolean)

プレフィックス ドキュメントの順序で子孫ノード (このノードを含む) の一覧を取得します。

DescendantNodesAndTokens(Func<SyntaxNode,Boolean>, Boolean)

プレフィックス ドキュメントの順序で子孫ノードとトークンの一覧を取得します。

DescendantNodesAndTokens(TextSpan, Func<SyntaxNode,Boolean>, Boolean)

プレフィックス ドキュメントの順序で子孫ノードとトークンの一覧を取得します。

DescendantNodesAndTokensAndSelf(Func<SyntaxNode,Boolean>, Boolean)

プレフィックス ドキュメントの順序で子孫ノードとトークン (このノードを含む) の一覧を取得します。

DescendantNodesAndTokensAndSelf(TextSpan, Func<SyntaxNode,Boolean>, Boolean)

子孫ノードとトークン (このノードを含む) の一覧をプレフィックス ドキュメントの順序で取得します。

DescendantTokens(Func<SyntaxNode,Boolean>, Boolean)

このノードのスパン内のすべてのトークンの一覧を取得します。

DescendantTokens(TextSpan, Func<SyntaxNode,Boolean>, Boolean)

このノードの完全なスパン内のすべてのトークンの一覧を取得します。

DescendantTrivia(Func<SyntaxNode,Boolean>, Boolean)

子孫ノードとトークンに関連付けられているすべてのトリビアの一覧を取得します。

DescendantTrivia(TextSpan, Func<SyntaxNode,Boolean>, Boolean)

子孫ノードとトークンに関連付けられているすべてのトリビアの一覧を取得します。

EquivalentToCore(SyntaxNode)

このノードが他のノードと構造的に等価であるかどうかを判断します。

FindNode(TextSpan, Boolean, Boolean)

を含む最小の FullSpan ノードを span検索します。 getInnermostNodeForTie は、タイ (つまり、親と同じスパンを持つノード) の場合の動作を決定するために使用されます。 が true の場合 getInnermostNodeForTie 、指定 spanされた を含む最下位の降順ノードが返されます。 それ以外の場合は、指定 spanされた を含む最も外側のノードが返されます。

FindToken(Int32, Boolean)

スパンに指定された位置が含まれる、このノードの子孫トークンを検索します。

FindTokenCore(Int32, Boolean)

スパンに指定された位置が含まれる、このノードの子孫トークンを検索します。

FindTokenCore(Int32, Func<SyntaxTrivia,Boolean>)

スパンに指定された位置が含まれる、このノードの子孫トークンを検索します。

FindTrivia(Int32, Boolean)

スパンに指定された位置が含まれる、このノードの子孫トリビアを検索します。

FindTrivia(Int32, Func<SyntaxTrivia,Boolean>)

指定した位置で、このノードの子孫トリビアを検索します。この位置は、ノードのスパン内にあります。

FindTriviaCore(Int32, Boolean)

スパンに指定された位置が含まれる、このノードの子孫トリビアを検索します。

FirstAncestorOrSelf<TNode,TArg>(Func<TNode,TArg,Boolean>, TArg, Boolean)

述語に一致する TNode 型の最初のノードを取得します。

FirstAncestorOrSelf<TNode>(Func<TNode,Boolean>, Boolean)

述語に一致する TNode 型の最初のノードを取得します。

GetAnnotatedNodes(String)

指定した注釈の種類を持つすべてのノードを取得します。

GetAnnotatedNodes(SyntaxAnnotation)

指定した注釈を持つすべてのノードを取得します。

GetAnnotatedNodesAndTokens(String)

指定した注釈の種類の注釈を持つすべてのノードとトークンを取得します。

GetAnnotatedNodesAndTokens(String[])

指定した注釈の種類の注釈を持つすべてのノードとトークンを取得します。

GetAnnotatedNodesAndTokens(SyntaxAnnotation)

指定した注釈を持つすべてのノードとトークンを取得します。

GetAnnotatedTokens(String)

指定された注釈の種類を持つすべてのトークンを取得します。

GetAnnotatedTokens(SyntaxAnnotation)

指定した注釈を持つすべてのトークンを取得します。

GetAnnotatedTrivia(String)

指定した注釈の種類の注釈を持つすべてのトリビアを取得します。

GetAnnotatedTrivia(String[])

指定した注釈の種類の注釈を持つすべてのトリビアを取得します。

GetAnnotatedTrivia(SyntaxAnnotation)

指定した注釈を持つすべてのトリビアを取得します。

GetAnnotations(IEnumerable<String>)

指定した注釈の種類を持つすべての注釈を取得します。

GetAnnotations(String)

指定した注釈の種類を持つすべての注釈を取得します。

GetDiagnostics()

このノードをルートとして持つサブ ツリー内のすべての診断の一覧を取得します。 このメソッドは、nowarn、warnaserror などの#pragmasおよびコンパイラ オプションに基づいて診断をフィルター処理しません。

GetFirstToken(Boolean, Boolean, Boolean, Boolean)

このノードによってルート化されたツリーの最初のトークンを取得します。 幅 0 のトークンをスキップします。

GetLastToken(Boolean, Boolean, Boolean, Boolean)

このノードによってルート化されたツリーの最後のトークンを取得します。 幅 0 のトークンをスキップします。

GetLeadingTrivia()

ソース コードでこのノードの前に表示され、このノードの子孫であるトークンにアタッチされるトリビアの一覧。

GetLocation()

構文ツリー内の非ターミナル ノードを表します。 これは、 と VisualBasicSyntaxNodeに依存CSharpSyntaxNodeしない言語です。

GetRed<T>(T, Int32)

構文ツリー内の非ターミナル ノードを表します。 これは、 と VisualBasicSyntaxNodeに依存CSharpSyntaxNodeしない言語です。

GetRedAtZero<T>(T)

構文ツリー内の非ターミナル ノードを表します。 これは、 と VisualBasicSyntaxNodeに依存CSharpSyntaxNodeしない言語です。

GetReference()

この構文ノードの を SyntaxReference 取得します。 CommonSyntaxReferences を使用すると、ツリー全体とソース テキストをメモリに保持することなく、構文ノードへのアクセスを回復できます。

GetText(Encoding, SourceHashAlgorithm)

このノードのフルテキストを新しい SourceText インスタンスとして取得します。

GetTrailingTrivia()

ソース コードでこのノードの後に表示され、このノードの子孫であるトークンにアタッチされるトリビアの一覧。

HasAnnotation(SyntaxAnnotation)

このノードに特定の注釈があるかどうかを判断します。

HasAnnotations(IEnumerable<String>)

このノードに、特定の注釈の種類を持つ注釈があるかどうかを判断します。

HasAnnotations(String)

このノードに特定の注釈の種類を持つ注釈があるかどうかを判断します。

InsertNodesInListCore(SyntaxNode, IEnumerable<SyntaxNode>, Boolean)

構文ツリー内の非ターミナル ノードを表します。 これは、 と VisualBasicSyntaxNodeに依存CSharpSyntaxNodeしない言語です。

InsertTokensInListCore(SyntaxToken, IEnumerable<SyntaxToken>, Boolean)

構文ツリー内の非ターミナル ノードを表します。 これは、 と VisualBasicSyntaxNodeに依存CSharpSyntaxNodeしない言語です。

InsertTriviaInListCore(SyntaxTrivia, IEnumerable<SyntaxTrivia>, Boolean)

構文ツリー内の非ターミナル ノードを表します。 これは、 と VisualBasicSyntaxNodeに依存CSharpSyntaxNodeしない言語です。

IsEquivalentTo(SyntaxNode)

このノードが別のノードと構造的に等価であるかどうかを判断します。

IsEquivalentTo(SyntaxNode, Boolean)

トリビアの違いを無視して、2 つのノードが同じかどうかを判断します。

IsEquivalentToCore(SyntaxNode, Boolean)

トリビアの違いを無視して、2 つのノードが同じかどうかを判断します。

IsIncrementallyIdenticalTo(SyntaxNode)

これら 2 つのノードが "増分同一" と見なされる場合は true を返します。 を使用してWithChangedText(SourceText)増分解析され、インクリメンタル パーサーが元のツリーからノードを取得し、新しいツリーでその全体を使用できる場合SyntaxTree、増分同一ノードが発生します。 この場合、各ノードの は ToFullString() 同じになりますが、異なる親を持つことができ、それぞれのツリー内の異なる位置で発生する可能性があります。 2 つのノードが増分的に同じである場合、各ノードのすべての子も増分的に同じになります。

IsPartOfStructuredTrivia()

このノードが構造化トリビアの子孫であるかどうかを判断します。

NormalizeWhitespaceCore(String, String, Boolean)

構文ツリー内の非ターミナル ノードを表します。 これは、 と VisualBasicSyntaxNodeに依存CSharpSyntaxNodeしない言語です。

RemoveNodesCore(IEnumerable<SyntaxNode>, SyntaxRemoveOptions)

指定したノードが削除されたノードの新しいツリーを作成します。

ReplaceCore<TNode>(IEnumerable<TNode>, Func<TNode,TNode,SyntaxNode>, IEnumerable<SyntaxToken>, Func<SyntaxToken,SyntaxToken,SyntaxToken>, IEnumerable<SyntaxTrivia>, Func<SyntaxTrivia,SyntaxTrivia,SyntaxTrivia>)

指定したノード、トークン、またはトリビアが置き換えられたノードの新しいツリーを作成します。

ReplaceNodeInListCore(SyntaxNode, IEnumerable<SyntaxNode>)

構文ツリー内の非ターミナル ノードを表します。 これは、 と VisualBasicSyntaxNodeに依存CSharpSyntaxNodeしない言語です。

ReplaceTokenInListCore(SyntaxToken, IEnumerable<SyntaxToken>)

構文ツリー内の非ターミナル ノードを表します。 これは、 と VisualBasicSyntaxNodeに依存CSharpSyntaxNodeしない言語です。

ReplaceTriviaInListCore(SyntaxTrivia, IEnumerable<SyntaxTrivia>)

構文ツリー内の非ターミナル ノードを表します。 これは、 と VisualBasicSyntaxNodeに依存CSharpSyntaxNodeしない言語です。

SerializeTo(Stream, CancellationToken)
古い.
古い.

ノードを特定 streamの にシリアル化します。 streamさらに書き込みを行う場合は、 を開いたままにします。

ToFullString()

先頭と末尾のトリビアを含む、このノードの完全な文字列表現を返します。

ToString()

このノードの文字列表現を返します。先頭と末尾のトリビアは含まれません。

WriteTo(TextWriter)

このノードのフルテキストを指定した TextWriterに書き込みます。

拡張メソッド

GetFirstDirective(SyntaxNode, Func<DirectiveTriviaSyntax,Boolean>)

このノードによってルート化されたツリーの最初のディレクティブを取得します。

GetLastDirective(SyntaxNode, Func<DirectiveTriviaSyntax,Boolean>)

このノードによってルート化されたツリーの最後のディレクティブを取得します。

Kind(SyntaxNode)

from RawKind プロパティの SyntaxKindSyntaxNode返します。

TryGetInferredMemberName(SyntaxNode)

初期化子式を指定すると、匿名プロパティまたはタプル要素の名前が推論されます。 失敗した場合は null を返します

ContainsDirective(SyntaxNode, SyntaxKind)

このノードに、一致する種類のディレクティブ (、#if#nullable、など) が含まれている場合は true を返します。

IsKind(SyntaxNode, SyntaxKind)

が指定した種類であるかどうかを SyntaxNode 判断します。

GetCurrentNode<TNode>(SyntaxNode, TNode)

元の追跡対象ノードに対応するサブツリー内のノードを取得します。 TrackNodes を使用してノードの追跡を開始します。

GetCurrentNodes<TNode>(SyntaxNode, TNode)

元の追跡対象ノードに対応するサブツリー内のノードを取得します。 TrackNodes を使用してノードの追跡を開始します。

GetCurrentNodes<TNode>(SyntaxNode, IEnumerable<TNode>)

元の追跡対象ノードに対応するサブツリー内のノードを取得します。 TrackNodes を使用してノードの追跡を開始します。

TryGetInferredMemberName(SyntaxNode)

初期化子式を指定すると、匿名プロパティまたはタプル要素の名前が推論されます。 失敗した場合は Nothing を返します

GetDirectives(SyntaxNode, Func<DirectiveTriviaSyntax,Boolean>)

省略可能なフィルター処理を使用して、指定した SyntaxNode の DirectiveTriviaSyntax 項目を取得します。

GetFirstDirective(SyntaxNode, Func<DirectiveTriviaSyntax,Boolean>)

指定した SyntaxNode の最初の DirectiveTriviaSyntax 項目を取得します。

GetLastDirective(SyntaxNode, Func<DirectiveTriviaSyntax,Boolean>)

指定した SyntaxNode の最後の DirectiveTriviaSyntax 項目を取得します。

Kind(SyntaxNode)

from RawKind プロパティの SyntaxKindSyntaxNode返します。

ContainsDirective(SyntaxNode, SyntaxKind)

このノードに、一致する種類のディレクティブ (、#if#nullable、など) が含まれている場合は true を返します。

IsKind(SyntaxNode, SyntaxKind)

が指定した種類であるかどうかを SyntaxNode 判断します。

適用対象