Share via


SyntaxTree 類別

定義

原始檔案的剖析標記法。

public ref class SyntaxTree abstract
public abstract class SyntaxTree
type SyntaxTree = class
Public MustInherit Class SyntaxTree
繼承
SyntaxTree
衍生

建構函式

SyntaxTree()

原始檔案的剖析標記法。

欄位

EmptyDiagnosticOptions

DiagnosticOptions 的快取值。

屬性

DiagnosticOptions
已淘汰.

指定此樹狀結構中每個警告之自訂行為的選項。

Encoding

原始檔案的文字編碼。

FilePath

原始檔案檔的路徑。

HasCompilationUnitRoot

如果此語法樹狀結構具有具有 SyntaxKind 「CompilationUnit」 的根目錄,則傳回 true。

Length

語法樹狀結構的文字長度。

Options

剖析器用來產生語法樹狀結構的選項。

OptionsCore

剖析器用來產生語法樹狀結構的選項。

方法

GetChangedSpans(SyntaxTree)

傳回這個樹狀結構與指定樹狀結構之間已變更區域的清單。 基於效能考慮,清單是保守的。 它可能會傳回大於實際變更的區域。

GetChanges(SyntaxTree)

取得文字變更的清單,當套用至舊樹狀結構時,會產生這個樹狀結構。

GetDiagnostics(CancellationToken)

取得語法樹狀結構中所有診斷的清單。 此方法不會根據#pragmas和編譯器選項來篩選診斷,例如 nowarn、warnaserror 等。

GetDiagnostics(SyntaxNode)

取得子樹狀結構中具有指定節點做為其根目錄的所有診斷清單。 此方法不會根據#pragmas和編譯器選項來篩選診斷,例如 nowarn、warnaserror 等。

GetDiagnostics(SyntaxNodeOrToken)

取得子樹狀結構中所有診斷的清單,該子樹狀結構中具有指定節點做為其根目錄,或與權杖及其相關 Trivia 相關聯。 此方法不會根據#pragmas和編譯器選項來篩選診斷,例如 nowarn、warnaserror 等。

GetDiagnostics(SyntaxToken)

取得與權杖和任何相關 Trivia 相關聯的所有診斷清單。 此方法不會根據#pragmas和編譯器選項來篩選診斷,例如 nowarn、warnaserror 等。

GetDiagnostics(SyntaxTrivia)

取得與 Trivia 相關聯的所有診斷清單。 此方法不會根據#pragmas和編譯器選項來篩選診斷,例如 nowarn、warnaserror 等。

GetLineMappings(CancellationToken)

如果樹狀結構中沒有行對應指示詞,則傳回空序列。 否則,會傳回一連串的範圍:每組描述兩個連續#line指示詞之間樹狀結構範圍的對應。 如果第一個指示詞不在第一行,則第一組描述第一個指示詞前面的範圍對應。 序列的最後一組描述最後一個#line指示詞後面的範圍對應。

GetLineSpan(TextSpan, CancellationToken)

取得指定範圍的路徑、行和資料行位置。

GetLineVisibility(Int32, CancellationToken)

傳回指定位置之線條的可見度。

GetLocation(TextSpan)

取得指定之文字範圍的位置。

GetMappedLineSpan(TextSpan, CancellationToken)

取得在 C# 或 #ExternalSource VB () #line 套用源行對應指示詞之後的路徑、行和資料行位置。

GetReference(SyntaxNode)

取得指定語法節點的 SyntaxReference。 SyntaxReferences 可用來重新取得語法節點的存取權,而不需要將整個樹狀結構和源文字保留在記憶體中。

GetRoot(CancellationToken)

取得語法樹狀結構的根節點,必要時會導致計算。

GetRootAsync(CancellationToken)

以非同步方式取得語法樹狀結構的根節點。

GetRootAsyncCore(CancellationToken)

以非同步方式取得語法樹狀結構的根節點。

GetRootCore(CancellationToken)

取得語法樹狀結構的根節點,必要時會導致計算。

GetText(CancellationToken)

取得原始檔案的文字。

GetTextAsync(CancellationToken)

以非同步方式取得原始檔案的文字。

HasHiddenRegions()

樹狀結構中是否有任何隱藏的區域?

IsEquivalentTo(SyntaxTree, Boolean)

判斷兩個樹狀結構是否相同,並忽略一般差異。

ToString()

傳回 , String 表示這個 SyntaxTree 的整個來源文字。

TryGetRoot(SyntaxNode)

如果語法樹狀結構可供使用,則取得其根目錄。

TryGetRootCore(SyntaxNode)

如果語法樹狀結構可供使用,則取得其根目錄。

TryGetText(SourceText)

如果語法樹狀結構可供使用,則取得其文字。

WithChangedText(SourceText)

使用新的源文字,根據此樹狀結構建立新的語法樹狀結構。

如果新的源文字是目前源文字的次要變更,累加剖析就會重複使用大部分目前的語法樹狀結構內部資料。 否則,將會使用新的原始程式文字進行完整剖析。

WithDiagnosticOptions(ImmutableDictionary<String,ReportDiagnostic>)
已淘汰.

傳回新的樹狀結構,其 DiagnosticOptions 為指定的值,而其他屬性則從目前的樹狀結構複製。

WithFilePath(String)

傳回新的樹狀結構,其 FilePath 為指定的節點,而其他屬性則從目前的樹狀結構複製。

WithRootAndOptions(SyntaxNode, ParseOptions)

傳回新的樹狀結構,其根目錄和選項如指定,而其他屬性則從目前的樹狀結構複製。

擴充方法

GetCompilationUnitRoot(SyntaxTree, CancellationToken)

原始檔案的剖析標記法。

GetCompilationUnitRoot(SyntaxTree)

取得指定之 SyntaxTree 的根 CompilationUnitSyntax。

適用於