SyntaxTree 類別
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
原始檔案的剖析標記法。
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# 或 |
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。 |