共用方式為


VisualBasicCompilation 類別

定義

Compilation 對像是編譯程式單一調用的不可變表示法。 雖然不可變,但編譯也是隨選的,因為可以快速建立編譯,但編譯程式元件或所有程式代碼都會回應方法或屬性。 此外,編譯可能會產生新的編譯,但目前編譯的變更很小。 在許多情況下,比從頭開始建立新的編譯更有效率,因為新的編譯可以從舊編譯共享資訊。

public ref class VisualBasicCompilation sealed : Microsoft::CodeAnalysis::Compilation
public sealed class VisualBasicCompilation : Microsoft.CodeAnalysis.Compilation
type VisualBasicCompilation = class
    inherit Compilation
Public NotInheritable Class VisualBasicCompilation
Inherits Compilation
繼承
VisualBasicCompilation

欄位

_features

Compilation 對像是編譯程式單一調用的不可變表示法。 雖然不可變,但編譯也是隨選的,因為可以快速建立編譯,但編譯程式元件或所有程式代碼都會回應方法或屬性。 此外,編譯可能會產生新的編譯,但目前編譯的變更很小。 在許多情況下,比從頭開始建立新的編譯更有效率,因為新的編譯可以從舊編譯共享資訊。

(繼承來源 Compilation)

屬性

Assembly

IAssemblySymbol 表示要建立的元件。

(繼承來源 Compilation)
AssemblyName

簡單元件名稱,如果未指定則為 null。

(繼承來源 Compilation)
CommonAssembly

Compilation 對像是編譯程式單一調用的不可變表示法。 雖然不可變,但編譯也是隨選的,因為可以快速建立編譯,但編譯程式元件或所有程式代碼都會回應方法或屬性。 此外,編譯可能會產生新的編譯,但目前編譯的變更很小。 在許多情況下,比從頭開始建立新的編譯更有效率,因為新的編譯可以從舊編譯共享資訊。

(繼承來源 Compilation)
CommonDynamicType

Compilation 對像是編譯程式單一調用的不可變表示法。 雖然不可變,但編譯也是隨選的,因為可以快速建立編譯,但編譯程式元件或所有程式代碼都會回應方法或屬性。 此外,編譯可能會產生新的編譯,但目前編譯的變更很小。 在許多情況下,比從頭開始建立新的編譯更有效率,因為新的編譯可以從舊編譯共享資訊。

(繼承來源 Compilation)
CommonGlobalNamespace

Compilation 對像是編譯程式單一調用的不可變表示法。 雖然不可變,但編譯也是隨選的,因為可以快速建立編譯,但編譯程式元件或所有程式代碼都會回應方法或屬性。 此外,編譯可能會產生新的編譯,但目前編譯的變更很小。 在許多情況下,比從頭開始建立新的編譯更有效率,因為新的編譯可以從舊編譯共享資訊。

(繼承來源 Compilation)
CommonObjectType

Compilation 對像是編譯程式單一調用的不可變表示法。 雖然不可變,但編譯也是隨選的,因為可以快速建立編譯,但編譯程式元件或所有程式代碼都會回應方法或屬性。 此外,編譯可能會產生新的編譯,但目前編譯的變更很小。 在許多情況下,比從頭開始建立新的編譯更有效率,因為新的編譯可以從舊編譯共享資訊。

(繼承來源 Compilation)
CommonOptions

Compilation 對像是編譯程式單一調用的不可變表示法。 雖然不可變,但編譯也是隨選的,因為可以快速建立編譯,但編譯程式元件或所有程式代碼都會回應方法或屬性。 此外,編譯可能會產生新的編譯,但目前編譯的變更很小。 在許多情況下,比從頭開始建立新的編譯更有效率,因為新的編譯可以從舊編譯共享資訊。

(繼承來源 Compilation)
CommonScriptClass

Compilation 對像是編譯程式單一調用的不可變表示法。 雖然不可變,但編譯也是隨選的,因為可以快速建立編譯,但編譯程式元件或所有程式代碼都會回應方法或屬性。 此外,編譯可能會產生新的編譯,但目前編譯的變更很小。 在許多情況下,比從頭開始建立新的編譯更有效率,因為新的編譯可以從舊編譯共享資訊。

(繼承來源 Compilation)
CommonScriptGlobalsType

Compilation 對像是編譯程式單一調用的不可變表示法。 雖然不可變,但編譯也是隨選的,因為可以快速建立編譯,但編譯程式元件或所有程式代碼都會回應方法或屬性。 此外,編譯可能會產生新的編譯,但目前編譯的變更很小。 在許多情況下,比從頭開始建立新的編譯更有效率,因為新的編譯可以從舊編譯共享資訊。

(繼承來源 Compilation)
CommonSourceModule

Compilation 對像是編譯程式單一調用的不可變表示法。 雖然不可變,但編譯也是隨選的,因為可以快速建立編譯,但編譯程式元件或所有程式代碼都會回應方法或屬性。 此外,編譯可能會產生新的編譯,但目前編譯的變更很小。 在許多情況下,比從頭開始建立新的編譯更有效率,因為新的編譯可以從舊編譯共享資訊。

(繼承來源 Compilation)
CommonSyntaxTrees

Compilation 對像是編譯程式單一調用的不可變表示法。 雖然不可變,但編譯也是隨選的,因為可以快速建立編譯,但編譯程式元件或所有程式代碼都會回應方法或屬性。 此外,編譯可能會產生新的編譯,但目前編譯的變更很小。 在許多情況下,比從頭開始建立新的編譯更有效率,因為新的編譯可以從舊編譯共享資訊。

(繼承來源 Compilation)
DirectiveReferences

Compilation 對像是編譯程式單一調用的不可變表示法。 雖然不可變,但編譯也是隨選的,因為可以快速建立編譯,但編譯程式元件或所有程式代碼都會回應方法或屬性。 此外,編譯可能會產生新的編譯,但目前編譯的變更很小。 在許多情況下,比從頭開始建立新的編譯更有效率,因為新的編譯可以從舊編譯共享資訊。

DynamicType

此編譯中類型 'dynamic' 的 TypeSymbol。

(繼承來源 Compilation)
ExternalReferences

傳遞至編譯建構函式的元數據參考。

(繼承來源 Compilation)
GlobalNamespace

根命名空間,其中包含原始碼或參考元數據中定義的所有命名空間和類型,並合併成單一命名空間階層。

(繼承來源 Compilation)
IsCaseSensitive

Compilation 對像是編譯程式單一調用的不可變表示法。 雖然不可變,但編譯也是隨選的,因為可以快速建立編譯,但編譯程式元件或所有程式代碼都會回應方法或屬性。 此外,編譯可能會產生新的編譯,但目前編譯的變更很小。 在許多情況下,比從頭開始建立新的編譯更有效率,因為新的編譯可以從舊編譯共享資訊。

Language

Compilation 對像是編譯程式單一調用的不可變表示法。 雖然不可變,但編譯也是隨選的,因為可以快速建立編譯,但編譯程式元件或所有程式代碼都會回應方法或屬性。 此外,編譯可能會產生新的編譯,但目前編譯的變更很小。 在許多情況下,比從頭開始建立新的編譯更有效率,因為新的編譯可以從舊編譯共享資訊。

LanguageVersion

用來剖析此編譯語法樹狀結構的語言版本。

ObjectType

.NET System.Object 類型的 INamedTypeSymbol,如果此編譯中沒有 COR 連結庫,可能會有 TypeKind 錯誤。

(繼承來源 Compilation)
Options

Compilation 對像是編譯程式單一調用的不可變表示法。 雖然不可變,但編譯也是隨選的,因為可以快速建立編譯,但編譯程式元件或所有程式代碼都會回應方法或屬性。 此外,編譯可能會產生新的編譯,但目前編譯的變更很小。 在許多情況下,比從頭開始建立新的編譯更有效率,因為新的編譯可以從舊編譯共享資訊。

ReferencedAssemblyNames

Compilation 對像是編譯程式單一調用的不可變表示法。 雖然不可變,但編譯也是隨選的,因為可以快速建立編譯,但編譯程式元件或所有程式代碼都會回應方法或屬性。 此外,編譯可能會產生新的編譯,但目前編譯的變更很小。 在許多情況下,比從頭開始建立新的編譯更有效率,因為新的編譯可以從舊編譯共享資訊。

References

所有元數據參考 -- 傳遞至編譯建構函式的參考,以及透過 #r 指示詞指定的參考。

(繼承來源 Compilation)
ScriptClass

表示隱含腳本類別的符號。 如果類別未在編譯中定義,則為 Null。

(繼承來源 Compilation)
ScriptCompilationInfo

Compilation 對像是編譯程式單一調用的不可變表示法。 雖然不可變,但編譯也是隨選的,因為可以快速建立編譯,但編譯程式元件或所有程式代碼都會回應方法或屬性。 此外,編譯可能會產生新的編譯,但目前編譯的變更很小。 在許多情況下,比從頭開始建立新的編譯更有效率,因為新的編譯可以從舊編譯共享資訊。

(繼承來源 Compilation)
SourceModule

IModuleSymbol取得編譯所有原始程式碼所建立模組的 。

(繼承來源 Compilation)
SyntaxTrees

取得此編譯所使用之語法樹狀架構的唯讀清單。

方法

AddReferences(IEnumerable<MetadataReference>)

Compilation 對像是編譯程式單一調用的不可變表示法。 雖然不可變,但編譯也是隨選的,因為可以快速建立編譯,但編譯程式元件或所有程式代碼都會回應方法或屬性。 此外,編譯可能會產生新的編譯,但目前編譯的變更很小。 在許多情況下,比從頭開始建立新的編譯更有效率,因為新的編譯可以從舊編譯共享資訊。

AddReferences(MetadataReference[])

Compilation 對像是編譯程式單一調用的不可變表示法。 雖然不可變,但編譯也是隨選的,因為可以快速建立編譯,但編譯程式元件或所有程式代碼都會回應方法或屬性。 此外,編譯可能會產生新的編譯,但目前編譯的變更很小。 在許多情況下,比從頭開始建立新的編譯更有效率,因為新的編譯可以從舊編譯共享資訊。

AddSyntaxTrees(IEnumerable<SyntaxTree>)

Compilation 對像是編譯程式單一調用的不可變表示法。 雖然不可變,但編譯也是隨選的,因為可以快速建立編譯,但編譯程式元件或所有程式代碼都會回應方法或屬性。 此外,編譯可能會產生新的編譯,但目前編譯的變更很小。 在許多情況下,比從頭開始建立新的編譯更有效率,因為新的編譯可以從舊編譯共享資訊。

AddSyntaxTrees(SyntaxTree[])

Compilation 對像是編譯程式單一調用的不可變表示法。 雖然不可變,但編譯也是隨選的,因為可以快速建立編譯,但編譯程式元件或所有程式代碼都會回應方法或屬性。 此外,編譯可能會產生新的編譯,但目前編譯的變更很小。 在許多情況下,比從頭開始建立新的編譯更有效率,因為新的編譯可以從舊編譯共享資訊。

AppendDefaultVersionResource(Stream)

Compilation 對像是編譯程式單一調用的不可變表示法。 雖然不可變,但編譯也是隨選的,因為可以快速建立編譯,但編譯程式元件或所有程式代碼都會回應方法或屬性。 此外,編譯可能會產生新的編譯,但目前編譯的變更很小。 在許多情況下,比從頭開始建立新的編譯更有效率,因為新的編譯可以從舊編譯共享資訊。

(繼承來源 Compilation)
ClassifyCommonConversion(ITypeSymbol, ITypeSymbol)

Compilation 對像是編譯程式單一調用的不可變表示法。 雖然不可變,但編譯也是隨選的,因為可以快速建立編譯,但編譯程式元件或所有程式代碼都會回應方法或屬性。 此外,編譯可能會產生新的編譯,但目前編譯的變更很小。 在許多情況下,比從頭開始建立新的編譯更有效率,因為新的編譯可以從舊編譯共享資訊。

ClassifyConversion(ITypeSymbol, ITypeSymbol)

判斷類型 「來源」和「目的地」之間是否有何種轉換。

Clone()

使用不同的符號實例建立此編譯的複本

CommonAddSyntaxTrees(IEnumerable<SyntaxTree>)

Compilation 對像是編譯程式單一調用的不可變表示法。 雖然不可變,但編譯也是隨選的,因為可以快速建立編譯,但編譯程式元件或所有程式代碼都會回應方法或屬性。 此外,編譯可能會產生新的編譯,但目前編譯的變更很小。 在許多情況下,比從頭開始建立新的編譯更有效率,因為新的編譯可以從舊編譯共享資訊。

(繼承來源 Compilation)
CommonBindScriptClass()

解析代表文本容器 (腳本類別) 的符號。 使用儲存在中的 ScriptClassName 容器類別完整名稱來尋找符號。

(繼承來源 Compilation)
CommonClone()

Compilation 對像是編譯程式單一調用的不可變表示法。 雖然不可變,但編譯也是隨選的,因為可以快速建立編譯,但編譯程式元件或所有程式代碼都會回應方法或屬性。 此外,編譯可能會產生新的編譯,但目前編譯的變更很小。 在許多情況下,比從頭開始建立新的編譯更有效率,因為新的編譯可以從舊編譯共享資訊。

(繼承來源 Compilation)
CommonContainsSyntaxTree(SyntaxTree)

Compilation 對像是編譯程式單一調用的不可變表示法。 雖然不可變,但編譯也是隨選的,因為可以快速建立編譯,但編譯程式元件或所有程式代碼都會回應方法或屬性。 此外,編譯可能會產生新的編譯,但目前編譯的變更很小。 在許多情況下,比從頭開始建立新的編譯更有效率,因為新的編譯可以從舊編譯共享資訊。

(繼承來源 Compilation)
CommonCreateAnonymousTypeSymbol(ImmutableArray<ITypeSymbol>, ImmutableArray<String>, ImmutableArray<Location>, ImmutableArray<Boolean>)

Compilation 對像是編譯程式單一調用的不可變表示法。 雖然不可變,但編譯也是隨選的,因為可以快速建立編譯,但編譯程式元件或所有程式代碼都會回應方法或屬性。 此外,編譯可能會產生新的編譯,但目前編譯的變更很小。 在許多情況下,比從頭開始建立新的編譯更有效率,因為新的編譯可以從舊編譯共享資訊。

(繼承來源 Compilation)
CommonCreateAnonymousTypeSymbol(ImmutableArray<ITypeSymbol>, ImmutableArray<String>, ImmutableArray<Location>, ImmutableArray<Boolean>, ImmutableArray<NullableAnnotation>)

Compilation 對像是編譯程式單一調用的不可變表示法。 雖然不可變,但編譯也是隨選的,因為可以快速建立編譯,但編譯程式元件或所有程式代碼都會回應方法或屬性。 此外,編譯可能會產生新的編譯,但目前編譯的變更很小。 在許多情況下,比從頭開始建立新的編譯更有效率,因為新的編譯可以從舊編譯共享資訊。

(繼承來源 Compilation)
CommonCreateArrayTypeSymbol(ITypeSymbol, Int32)

Compilation 對像是編譯程式單一調用的不可變表示法。 雖然不可變,但編譯也是隨選的,因為可以快速建立編譯,但編譯程式元件或所有程式代碼都會回應方法或屬性。 此外,編譯可能會產生新的編譯,但目前編譯的變更很小。 在許多情況下,比從頭開始建立新的編譯更有效率,因為新的編譯可以從舊編譯共享資訊。

(繼承來源 Compilation)
CommonCreateArrayTypeSymbol(ITypeSymbol, Int32, NullableAnnotation)

Compilation 對像是編譯程式單一調用的不可變表示法。 雖然不可變,但編譯也是隨選的,因為可以快速建立編譯,但編譯程式元件或所有程式代碼都會回應方法或屬性。 此外,編譯可能會產生新的編譯,但目前編譯的變更很小。 在許多情況下,比從頭開始建立新的編譯更有效率,因為新的編譯可以從舊編譯共享資訊。

(繼承來源 Compilation)
CommonCreateBuiltinOperator(String, ITypeSymbol, ITypeSymbol)

Compilation 對像是編譯程式單一調用的不可變表示法。 雖然不可變,但編譯也是隨選的,因為可以快速建立編譯,但編譯程式元件或所有程式代碼都會回應方法或屬性。 此外,編譯可能會產生新的編譯,但目前編譯的變更很小。 在許多情況下,比從頭開始建立新的編譯更有效率,因為新的編譯可以從舊編譯共享資訊。

(繼承來源 Compilation)
CommonCreateBuiltinOperator(String, ITypeSymbol, ITypeSymbol, ITypeSymbol)

Compilation 對像是編譯程式單一調用的不可變表示法。 雖然不可變,但編譯也是隨選的,因為可以快速建立編譯,但編譯程式元件或所有程式代碼都會回應方法或屬性。 此外,編譯可能會產生新的編譯,但目前編譯的變更很小。 在許多情況下,比從頭開始建立新的編譯更有效率,因為新的編譯可以從舊編譯共享資訊。

(繼承來源 Compilation)
CommonCreateErrorNamespaceSymbol(INamespaceSymbol, String)

Compilation 對像是編譯程式單一調用的不可變表示法。 雖然不可變,但編譯也是隨選的,因為可以快速建立編譯,但編譯程式元件或所有程式代碼都會回應方法或屬性。 此外,編譯可能會產生新的編譯,但目前編譯的變更很小。 在許多情況下,比從頭開始建立新的編譯更有效率,因為新的編譯可以從舊編譯共享資訊。

(繼承來源 Compilation)
CommonCreateErrorTypeSymbol(INamespaceOrTypeSymbol, String, Int32)

Compilation 對像是編譯程式單一調用的不可變表示法。 雖然不可變,但編譯也是隨選的,因為可以快速建立編譯,但編譯程式元件或所有程式代碼都會回應方法或屬性。 此外,編譯可能會產生新的編譯,但目前編譯的變更很小。 在許多情況下,比從頭開始建立新的編譯更有效率,因為新的編譯可以從舊編譯共享資訊。

(繼承來源 Compilation)
CommonCreateFunctionPointerTypeSymbol(ITypeSymbol, RefKind, ImmutableArray<ITypeSymbol>, ImmutableArray<RefKind>)

Compilation 對像是編譯程式單一調用的不可變表示法。 雖然不可變,但編譯也是隨選的,因為可以快速建立編譯,但編譯程式元件或所有程式代碼都會回應方法或屬性。 此外,編譯可能會產生新的編譯,但目前編譯的變更很小。 在許多情況下,比從頭開始建立新的編譯更有效率,因為新的編譯可以從舊編譯共享資訊。

(繼承來源 Compilation)
CommonCreateFunctionPointerTypeSymbol(ITypeSymbol, RefKind, ImmutableArray<ITypeSymbol>, ImmutableArray<RefKind>, SignatureCallingConvention, ImmutableArray<INamedTypeSymbol>)

Compilation 對像是編譯程式單一調用的不可變表示法。 雖然不可變,但編譯也是隨選的,因為可以快速建立編譯,但編譯程式元件或所有程式代碼都會回應方法或屬性。 此外,編譯可能會產生新的編譯,但目前編譯的變更很小。 在許多情況下,比從頭開始建立新的編譯更有效率,因為新的編譯可以從舊編譯共享資訊。

(繼承來源 Compilation)
CommonCreateNativeIntegerTypeSymbol(Boolean)

Compilation 對像是編譯程式單一調用的不可變表示法。 雖然不可變,但編譯也是隨選的,因為可以快速建立編譯,但編譯程式元件或所有程式代碼都會回應方法或屬性。 此外,編譯可能會產生新的編譯,但目前編譯的變更很小。 在許多情況下,比從頭開始建立新的編譯更有效率,因為新的編譯可以從舊編譯共享資訊。

(繼承來源 Compilation)
CommonCreatePointerTypeSymbol(ITypeSymbol)

Compilation 對像是編譯程式單一調用的不可變表示法。 雖然不可變,但編譯也是隨選的,因為可以快速建立編譯,但編譯程式元件或所有程式代碼都會回應方法或屬性。 此外,編譯可能會產生新的編譯,但目前編譯的變更很小。 在許多情況下,比從頭開始建立新的編譯更有效率,因為新的編譯可以從舊編譯共享資訊。

(繼承來源 Compilation)
CommonCreateTupleTypeSymbol(ImmutableArray<ITypeSymbol>, ImmutableArray<String>, ImmutableArray<Location>)

Compilation 對像是編譯程式單一調用的不可變表示法。 雖然不可變,但編譯也是隨選的,因為可以快速建立編譯,但編譯程式元件或所有程式代碼都會回應方法或屬性。 此外,編譯可能會產生新的編譯,但目前編譯的變更很小。 在許多情況下,比從頭開始建立新的編譯更有效率,因為新的編譯可以從舊編譯共享資訊。

(繼承來源 Compilation)
CommonCreateTupleTypeSymbol(ImmutableArray<ITypeSymbol>, ImmutableArray<String>, ImmutableArray<Location>, ImmutableArray<NullableAnnotation>)

Compilation 對像是編譯程式單一調用的不可變表示法。 雖然不可變,但編譯也是隨選的,因為可以快速建立編譯,但編譯程式元件或所有程式代碼都會回應方法或屬性。 此外,編譯可能會產生新的編譯,但目前編譯的變更很小。 在許多情況下,比從頭開始建立新的編譯更有效率,因為新的編譯可以從舊編譯共享資訊。

(繼承來源 Compilation)
CommonCreateTupleTypeSymbol(INamedTypeSymbol, ImmutableArray<String>, ImmutableArray<Location>)

Compilation 對像是編譯程式單一調用的不可變表示法。 雖然不可變,但編譯也是隨選的,因為可以快速建立編譯,但編譯程式元件或所有程式代碼都會回應方法或屬性。 此外,編譯可能會產生新的編譯,但目前編譯的變更很小。 在許多情況下,比從頭開始建立新的編譯更有效率,因為新的編譯可以從舊編譯共享資訊。

(繼承來源 Compilation)
CommonCreateTupleTypeSymbol(INamedTypeSymbol, ImmutableArray<String>, ImmutableArray<Location>, ImmutableArray<NullableAnnotation>)

Compilation 對像是編譯程式單一調用的不可變表示法。 雖然不可變,但編譯也是隨選的,因為可以快速建立編譯,但編譯程式元件或所有程式代碼都會回應方法或屬性。 此外,編譯可能會產生新的編譯,但目前編譯的變更很小。 在許多情況下,比從頭開始建立新的編譯更有效率,因為新的編譯可以從舊編譯共享資訊。

(繼承來源 Compilation)
CommonGetAssemblyOrModuleSymbol(MetadataReference)

Compilation 對像是編譯程式單一調用的不可變表示法。 雖然不可變,但編譯也是隨選的,因為可以快速建立編譯,但編譯程式元件或所有程式代碼都會回應方法或屬性。 此外,編譯可能會產生新的編譯,但目前編譯的變更很小。 在許多情況下,比從頭開始建立新的編譯更有效率,因為新的編譯可以從舊編譯共享資訊。

(繼承來源 Compilation)
CommonGetCompilationNamespace(INamespaceSymbol)

Compilation 對像是編譯程式單一調用的不可變表示法。 雖然不可變,但編譯也是隨選的,因為可以快速建立編譯,但編譯程式元件或所有程式代碼都會回應方法或屬性。 此外,編譯可能會產生新的編譯,但目前編譯的變更很小。 在許多情況下,比從頭開始建立新的編譯更有效率,因為新的編譯可以從舊編譯共享資訊。

(繼承來源 Compilation)
CommonGetEntryPoint(CancellationToken)

Compilation 對像是編譯程式單一調用的不可變表示法。 雖然不可變,但編譯也是隨選的,因為可以快速建立編譯,但編譯程式元件或所有程式代碼都會回應方法或屬性。 此外,編譯可能會產生新的編譯,但目前編譯的變更很小。 在許多情況下,比從頭開始建立新的編譯更有效率,因為新的編譯可以從舊編譯共享資訊。

(繼承來源 Compilation)
CommonGetSemanticModel(SyntaxTree, Boolean)

SemanticModel取得指定syntaxTree的 。 如果 Microsoft.CodeAnalysis.Compilation.SemanticModelProvider 為非 Null,它會嘗試使用 Microsoft.CodeAnalysis.SemanticModelProvider.GetSemanticModel(Microsoft.CodeAnalysis.SyntaxTree,Microsoft.CodeAnalysis.Compilation,System.Boolean) 來取得語意模型。 否則,它會使用 Microsoft.CodeAnalysis.Compilation.CreateSemanticModel(Microsoft.CodeAnalysis.SyntaxTree,System.Boolean)建立新的語意模型。

(繼承來源 Compilation)
CommonGetSpecialType(SpecialType)

Compilation 對像是編譯程式單一調用的不可變表示法。 雖然不可變,但編譯也是隨選的,因為可以快速建立編譯,但編譯程式元件或所有程式代碼都會回應方法或屬性。 此外,編譯可能會產生新的編譯,但目前編譯的變更很小。 在許多情況下,比從頭開始建立新的編譯更有效率,因為新的編譯可以從舊編譯共享資訊。

(繼承來源 Compilation)
CommonGetTypeByMetadataName(String)

Compilation 對像是編譯程式單一調用的不可變表示法。 雖然不可變,但編譯也是隨選的,因為可以快速建立編譯,但編譯程式元件或所有程式代碼都會回應方法或屬性。 此外,編譯可能會產生新的編譯,但目前編譯的變更很小。 在許多情況下,比從頭開始建立新的編譯更有效率,因為新的編譯可以從舊編譯共享資訊。

(繼承來源 Compilation)
CommonRemoveAllSyntaxTrees()

Compilation 對像是編譯程式單一調用的不可變表示法。 雖然不可變,但編譯也是隨選的,因為可以快速建立編譯,但編譯程式元件或所有程式代碼都會回應方法或屬性。 此外,編譯可能會產生新的編譯,但目前編譯的變更很小。 在許多情況下,比從頭開始建立新的編譯更有效率,因為新的編譯可以從舊編譯共享資訊。

(繼承來源 Compilation)
CommonRemoveSyntaxTrees(IEnumerable<SyntaxTree>)

Compilation 對像是編譯程式單一調用的不可變表示法。 雖然不可變,但編譯也是隨選的,因為可以快速建立編譯,但編譯程式元件或所有程式代碼都會回應方法或屬性。 此外,編譯可能會產生新的編譯,但目前編譯的變更很小。 在許多情況下,比從頭開始建立新的編譯更有效率,因為新的編譯可以從舊編譯共享資訊。

(繼承來源 Compilation)
CommonReplaceSyntaxTree(SyntaxTree, SyntaxTree)

Compilation 對像是編譯程式單一調用的不可變表示法。 雖然不可變,但編譯也是隨選的,因為可以快速建立編譯,但編譯程式元件或所有程式代碼都會回應方法或屬性。 此外,編譯可能會產生新的編譯,但目前編譯的變更很小。 在許多情況下,比從頭開始建立新的編譯更有效率,因為新的編譯可以從舊編譯共享資訊。

(繼承來源 Compilation)
CommonWithAssemblyName(String)

Compilation 對像是編譯程式單一調用的不可變表示法。 雖然不可變,但編譯也是隨選的,因為可以快速建立編譯,但編譯程式元件或所有程式代碼都會回應方法或屬性。 此外,編譯可能會產生新的編譯,但目前編譯的變更很小。 在許多情況下,比從頭開始建立新的編譯更有效率,因為新的編譯可以從舊編譯共享資訊。

(繼承來源 Compilation)
CommonWithOptions(CompilationOptions)

Compilation 對像是編譯程式單一調用的不可變表示法。 雖然不可變,但編譯也是隨選的,因為可以快速建立編譯,但編譯程式元件或所有程式代碼都會回應方法或屬性。 此外,編譯可能會產生新的編譯,但目前編譯的變更很小。 在許多情況下,比從頭開始建立新的編譯更有效率,因為新的編譯可以從舊編譯共享資訊。

(繼承來源 Compilation)
CommonWithReferences(IEnumerable<MetadataReference>)

使用指定的參考建立新的編譯。

(繼承來源 Compilation)
CommonWithScriptCompilationInfo(ScriptCompilationInfo)

Compilation 對像是編譯程式單一調用的不可變表示法。 雖然不可變,但編譯也是隨選的,因為可以快速建立編譯,但編譯程式元件或所有程式代碼都會回應方法或屬性。 此外,編譯可能會產生新的編譯,但目前編譯的變更很小。 在許多情況下,比從頭開始建立新的編譯更有效率,因為新的編譯可以從舊編譯共享資訊。

(繼承來源 Compilation)
ContainsSymbolsWithName(Func<String,Boolean>, SymbolFilter, CancellationToken)

如果有符合指定述詞的來源宣告符號名稱,則傳回 true。

ContainsSymbolsWithName(String, SymbolFilter, CancellationToken)

如果有符合所提供名稱的來源宣告符號名稱,則傳回 true。 這可能比 ContainsSymbolsWithName(Func<String,Boolean>, SymbolFilter, CancellationToken) 述詞只是簡單的字串檢查還要快。 name 不區分大小寫。

ContainsSyntaxTree(SyntaxTree)

是否在此編譯中傳入語法樹狀結構?

Create(String, IEnumerable<SyntaxTree>, IEnumerable<MetadataReference>, VisualBasicCompilationOptions)

從頭開始建立新的編譯。

CreateAnonymousTypeSymbol(ImmutableArray<ITypeSymbol>, ImmutableArray<String>, ImmutableArray<Boolean>, ImmutableArray<Location>)

傳回具有指定成員類型、名稱和來源位置的新匿名型別符號。 匿名類型成員預設為唯讀。 VB 支援可寫入的屬性,而且可以藉由傳入 false 中的 memberIsReadOnly適當位置來建立。

(繼承來源 Compilation)
CreateAnonymousTypeSymbol(ImmutableArray<ITypeSymbol>, ImmutableArray<String>, ImmutableArray<Boolean>, ImmutableArray<Location>, ImmutableArray<NullableAnnotation>)

傳回具有指定成員類型、名稱、來源位置和可為 Null 批注的新匿名型別符號。 匿名類型成員預設為唯讀。 VB 支援可寫入的屬性,而且可以藉由傳入 false 中的 memberIsReadOnly適當位置來建立。

(繼承來源 Compilation)
CreateArrayTypeSymbol(ITypeSymbol, Int32)

傳回新的 ArrayTypeSymbol,代表系結至此編譯中 COR 連結庫基底類型的數位類型。

(繼承來源 Compilation)
CreateArrayTypeSymbol(ITypeSymbol, Int32, NullableAnnotation)

傳回新的 ArrayTypeSymbol,代表系結至此編譯中 COR 連結庫基底類型的數位類型。

(繼承來源 Compilation)
CreateBuiltinOperator(String, ITypeSymbol, ITypeSymbol)

建立 , IMethodSymbolMethodKindBuiltinOperator 一元運算符。 內建運算子通常是針對語言隱含支援的符號 bool int.operator -(int value) 所建立,即使這類符號並未明確定義給來源或元數據中的該類型也一樣。

(繼承來源 Compilation)
CreateBuiltinOperator(String, ITypeSymbol, ITypeSymbol, ITypeSymbol)

IMethodSymbol建立 ,其 MethodKindBuiltinOperator 為二進位運算符。 內建運算子通常是針對語言隱含支援的符號 bool int.operator ==(int v1, int v2) 所建立,即使這類符號並未明確定義給來源或元數據中的該類型也一樣。

(繼承來源 Compilation)
CreateDefaultWin32Resources(Boolean, Boolean, Stream, Stream)

建立填入預設 win32 資源的數據流。

(繼承來源 Compilation)
CreateErrorNamespaceSymbol(INamespaceSymbol, String)

傳回新的 INamespaceSymbol,表示指定名稱遺漏) 命名空間 (錯誤。

(繼承來源 Compilation)
CreateErrorTypeSymbol(INamespaceOrTypeSymbol, String, Int32)

傳回新的 INamedTypeSymbol,代表指定之選擇性容器中具有指定名稱和 arity 的錯誤類型。

(繼承來源 Compilation)
CreateFunctionPointerTypeSymbol(ITypeSymbol, RefKind, ImmutableArray<ITypeSymbol>, ImmutableArray<RefKind>)

傳回新的 IFunctionPointerTypeSymbol,代表系結至此編譯中類型的函式指標類型。

(繼承來源 Compilation)
CreateFunctionPointerTypeSymbol(ITypeSymbol, RefKind, ImmutableArray<ITypeSymbol>, ImmutableArray<RefKind>, SignatureCallingConvention, ImmutableArray<INamedTypeSymbol>)

傳回新的 IFunctionPointerTypeSymbol,代表系結至此編譯中類型的函式指標類型。

(繼承來源 Compilation)
CreateNativeIntegerTypeSymbol(Boolean)

傳回代表原生整數的新 INamedTypeSymbol。

(繼承來源 Compilation)
CreatePointerTypeSymbol(ITypeSymbol)

傳回新的 IPointerTypeSymbol,代表系結至此編譯中類型的指標類型。

(繼承來源 Compilation)
CreateTupleTypeSymbol(ImmutableArray<ITypeSymbol>, ImmutableArray<String>, ImmutableArray<Location>)

傳回具有指定項目類型、名稱和位置的新 INamedTypeSymbol。

(繼承來源 Compilation)
CreateTupleTypeSymbol(ImmutableArray<ITypeSymbol>, ImmutableArray<String>, ImmutableArray<Location>, ImmutableArray<NullableAnnotation>)

傳回具有指定項目類型和 (選擇性) 項目名稱、位置和可為 Null 批注的新 INamedTypeSymbol。

(繼承來源 Compilation)
CreateTupleTypeSymbol(INamedTypeSymbol, ImmutableArray<String>, ImmutableArray<Location>)

傳回具有指定基礎類型和項目名稱和位置的新 INamedTypeSymbol。 基礎類型必須與 Tuple 相容。

(繼承來源 Compilation)
CreateTupleTypeSymbol(INamedTypeSymbol, ImmutableArray<String>, ImmutableArray<Location>, ImmutableArray<NullableAnnotation>)

傳回具有指定基礎類型的新 INamedTypeSymbol,並 (選擇性) 項目名稱、位置和可為 Null 的註釋。 基礎類型必須與 Tuple 相容。

(繼承來源 Compilation)
Emit(Stream, Stream, Stream, Stream, IEnumerable<ResourceDescription>, EmitOptions, CancellationToken)

Compilation 對像是編譯程式單一調用的不可變表示法。 雖然不可變,但編譯也是隨選的,因為可以快速建立編譯,但編譯程式元件或所有程式代碼都會回應方法或屬性。 此外,編譯可能會產生新的編譯,但目前編譯的變更很小。 在許多情況下,比從頭開始建立新的編譯更有效率,因為新的編譯可以從舊編譯共享資訊。

(繼承來源 Compilation)
Emit(Stream, Stream, Stream, Stream, IEnumerable<ResourceDescription>, EmitOptions, IMethodSymbol, CancellationToken)

Compilation 對像是編譯程式單一調用的不可變表示法。 雖然不可變,但編譯也是隨選的,因為可以快速建立編譯,但編譯程式元件或所有程式代碼都會回應方法或屬性。 此外,編譯可能會產生新的編譯,但目前編譯的變更很小。 在許多情況下,比從頭開始建立新的編譯更有效率,因為新的編譯可以從舊編譯共享資訊。

(繼承來源 Compilation)
Emit(Stream, Stream, Stream, Stream, IEnumerable<ResourceDescription>, EmitOptions, IMethodSymbol, Stream, IEnumerable<EmbeddedText>, CancellationToken)

Compilation 對像是編譯程式單一調用的不可變表示法。 雖然不可變,但編譯也是隨選的,因為可以快速建立編譯,但編譯程式元件或所有程式代碼都會回應方法或屬性。 此外,編譯可能會產生新的編譯,但目前編譯的變更很小。 在許多情況下,比從頭開始建立新的編譯更有效率,因為新的編譯可以從舊編譯共享資訊。

(繼承來源 Compilation)
Emit(Stream, Stream, Stream, Stream, IEnumerable<ResourceDescription>, EmitOptions, IMethodSymbol, Stream, IEnumerable<EmbeddedText>, Stream, CancellationToken)

將已編譯原始程式碼的 IL 發出至指定的數據流。

(繼承來源 Compilation)
EmitDifference(EmitBaseline, IEnumerable<SemanticEdit>, Func<ISymbol,Boolean>, Stream, Stream, Stream, CancellationToken)

針對 [編輯後繼續] 發出編譯與上一代之間的差異。 差異會以新增和變更的符號表示,並以元數據、IL 和 PDB 差異的形式發出。 目前編譯的表示法會以EmitBaseline傳回,以供後續的Edit和Continue使用。

(繼承來源 Compilation)
EmitDifference(EmitBaseline, IEnumerable<SemanticEdit>, Func<ISymbol, Boolean>, Stream, Stream, Stream, ICollection<MethodDefinitionHandle>, CancellationToken)
已淘汰.

針對 [編輯後繼續] 發出編譯與上一代之間的差異。 差異會以新增和變更的符號表示,並以元數據、IL 和 PDB 差異的形式發出。 目前編譯的表示法會以EmitBaseline傳回,以供後續的Edit和Continue使用。

(繼承來源 Compilation)
EmitDifference(EmitBaseline, IEnumerable<SemanticEdit>, Stream, Stream, Stream, ICollection<MethodDefinitionHandle>, CancellationToken)
已淘汰.

針對 [編輯後繼續] 發出編譯與上一代之間的差異。 差異會以新增和變更的符號表示,並以元數據、IL 和 PDB 差異的形式發出。 目前編譯的表示法會以EmitBaseline傳回,以供後續的Edit和Continue使用。

(繼承來源 Compilation)
GetAssemblyOrModuleSymbol(MetadataReference)

IAssemblySymbol取得用於建立這個編譯的元資料參考 的 或 IModuleSymbol

(繼承來源 Compilation)
GetCompilationNamespace(INamespaceSymbol)

取得指定模組或元件命名空間的對應編譯命名空間。

(繼承來源 Compilation)
GetDeclarationDiagnostics(CancellationToken)

取得整個編譯的宣告診斷。 這包括來自宣告的診斷,但不包括方法或初始化表達式的主體。 系統會快取宣告診斷集,因此第二次呼叫此方法應該很快。

GetDiagnostics(CancellationToken)

取得整個編譯的所有診斷。 這包括剖析、宣告和方法主體的診斷。 取得所有診斷可能是長度作業,因為它需要剖析和編譯所有程序代碼。 診斷集合不是快取,因此每次呼叫這個方法都會重新編譯所有方法。

GetEntryPoint(CancellationToken)

傳回Main方法,如果它是可執行 (,而不是腳本) ,則會作為元件的進入點。

(繼承來源 Compilation)
GetMetadataReference(IAssemblySymbol)

MetadataReference取得對應至元件符號的 。

(繼承來源 Compilation)
GetMethodBodyDiagnostics(CancellationToken)

取得整個編譯的方法主體診斷。 這隻包含來自方法和初始化表達式主體的診斷。 這些診斷不會快取,因此第二次呼叫此方法會重複大量工作。

GetParseDiagnostics(CancellationToken)

取得整個編譯的剖析診斷。 這包括從宣告剖析但不是剖析的診斷,以及方法或初始化表達式的主體。 系統會快取一組剖析診斷,因此第二次呼叫此方法應該很快。

GetSemanticModel(SyntaxTree, Boolean)

取得全新的 SemanticModel。 請注意,每個調用都會取得全新的 SemanticModel,每個叫用都有快取。 因此,一個藉由捨棄 SemanticModel 來有效地清除快取。

GetSpecialType(SpecialType)

從這個編譯所參考的 Cor Library 取得預先定義類型的符號。

(繼承來源 Compilation)
GetSymbolsWithName(Func<String,Boolean>, SymbolFilter, CancellationToken)

傳回名稱符合指定述詞的來源宣告符號。

GetSymbolsWithName(String, SymbolFilter, CancellationToken)

Compilation 對像是編譯程式單一調用的不可變表示法。 雖然不可變,但編譯也是隨選的,因為可以快速建立編譯,但編譯程式元件或所有程式代碼都會回應方法或屬性。 此外,編譯可能會產生新的編譯,但目前編譯的變更很小。 在許多情況下,比從頭開始建立新的編譯更有效率,因為新的編譯可以從舊編譯共享資訊。

GetTypeByMetadataName(String)

取得編譯元件內的型別,以及除了只能透過外部別名) 使用其標準 CLR 元數據名稱來參考的元件以外, (所有參考的元件。 此查閱會遵循下列順序:

  1. 如果在編譯的元件中找到類型,則會傳回該類型。
  2. 接下來,核心連結庫 (定義 System.Object 且沒有元件參考) 搜尋的連結庫。 如果找到該類型,則會傳回該類型。
  3. 最後,會搜尋所有其餘參考的非外部元件。 如果找到符合所提供元數據名稱的一個和一個類型,則會傳回該單一類型。 此檢查會忽略輔助功能。
(繼承來源 Compilation)
GetTypesByMetadataName(String)

取得具有編譯元件的所有型別,以及具有指定標準 CLR 元數據名稱的所有參考元件。 搜尋相符的類型名稱時,會忽略目前元件的輔助功能。

(繼承來源 Compilation)
GetUnreferencedAssemblyIdentities(Diagnostic)

假設報告 Diagnostic 未參考 AssemblyIdentitys,則會傳回未參考的實際 AssemblyIdentity 實例。

(繼承來源 Compilation)
GetUsedAssemblyReferences(CancellationToken)

Compilation 對像是編譯程式單一調用的不可變表示法。 雖然不可變,但編譯也是隨選的,因為可以快速建立編譯,但編譯程式元件或所有程式代碼都會回應方法或屬性。 此外,編譯可能會產生新的編譯,但目前編譯的變更很小。 在許多情況下,比從頭開始建立新的編譯更有效率,因為新的編譯可以從舊編譯共享資訊。

GetUsedAssemblyReferences(CancellationToken)

這個編譯所考慮使用的唯一元數據元件參考。 例如,如果在參考元件中宣告的類型是在編譯內的原始碼中參考,則會將參考視為使用。 等。傳回的集合是 API 所 References 傳回之參考的子集。 如果編譯包含錯誤,則結果為未定義。

匯入的命名空間對此 API 結果的影響取決於編譯是否停用未使用的匯入報告。 如果 DocumentationMode 設定為 None,則會停用未使用的匯入報告。

停用未使用的匯入報告時,結果會包含包含任何屬於匯入命名空間之類型的所有參考元件。 亦即,已考慮已使用。

啟用未使用的匯入報告時,匯入的命名空間不會影響此 API 的結果。 因此,移除結果中沒有的元件參考,可能會導致錯誤「CS0246:找不到類型或命名空間名稱 (您是否遺漏了 using 指示詞或元件參考?) 」未使用的命名空間彙入。 不過,編譯程式會將該匯入報告為未用於叫用此 API 的編譯。 為了避免發生錯誤,建議您同時移除未使用的元件參考和未使用的匯入。

(繼承來源 Compilation)
HasImplicitConversion(ITypeSymbol, ITypeSymbol)

如果有隱含 (C#) 或擴展 (VB) 轉換為 fromType ,則會傳回 toTypetrue。 如果 fromTypetoType 為 Null,或不存在這類轉換,則傳回 false。

(繼承來源 Compilation)
IsSymbolAccessibleWithin(ISymbol, ISymbol, ITypeSymbol)

檢查 是否 symbol 可從中 within存取。 類型的 throughType 選擇性限定符可用來解析實例成員的受保護存取。 所有符號都必須來自這個編譯,或是這個編譯所 References 參考 () 的元件。 within 必須是 INamedTypeSymbolIAssemblySymbol

(繼承來源 Compilation)
RemoveAllReferences()

Compilation 對像是編譯程式單一調用的不可變表示法。 雖然不可變,但編譯也是隨選的,因為可以快速建立編譯,但編譯程式元件或所有程式代碼都會回應方法或屬性。 此外,編譯可能會產生新的編譯,但目前編譯的變更很小。 在許多情況下,比從頭開始建立新的編譯更有效率,因為新的編譯可以從舊編譯共享資訊。

RemoveAllSyntaxTrees()

Compilation 對像是編譯程式單一調用的不可變表示法。 雖然不可變,但編譯也是隨選的,因為可以快速建立編譯,但編譯程式元件或所有程式代碼都會回應方法或屬性。 此外,編譯可能會產生新的編譯,但目前編譯的變更很小。 在許多情況下,比從頭開始建立新的編譯更有效率,因為新的編譯可以從舊編譯共享資訊。

RemoveReferences(IEnumerable<MetadataReference>)

Compilation 對像是編譯程式單一調用的不可變表示法。 雖然不可變,但編譯也是隨選的,因為可以快速建立編譯,但編譯程式元件或所有程式代碼都會回應方法或屬性。 此外,編譯可能會產生新的編譯,但目前編譯的變更很小。 在許多情況下,比從頭開始建立新的編譯更有效率,因為新的編譯可以從舊編譯共享資訊。

RemoveReferences(MetadataReference[])

Compilation 對像是編譯程式單一調用的不可變表示法。 雖然不可變,但編譯也是隨選的,因為可以快速建立編譯,但編譯程式元件或所有程式代碼都會回應方法或屬性。 此外,編譯可能會產生新的編譯,但目前編譯的變更很小。 在許多情況下,比從頭開始建立新的編譯更有效率,因為新的編譯可以從舊編譯共享資訊。

RemoveSyntaxTrees(IEnumerable<SyntaxTree>)

Compilation 對像是編譯程式單一調用的不可變表示法。 雖然不可變,但編譯也是隨選的,因為可以快速建立編譯,但編譯程式元件或所有程式代碼都會回應方法或屬性。 此外,編譯可能會產生新的編譯,但目前編譯的變更很小。 在許多情況下,比從頭開始建立新的編譯更有效率,因為新的編譯可以從舊編譯共享資訊。

RemoveSyntaxTrees(SyntaxTree[])

Compilation 對像是編譯程式單一調用的不可變表示法。 雖然不可變,但編譯也是隨選的,因為可以快速建立編譯,但編譯程式元件或所有程式代碼都會回應方法或屬性。 此外,編譯可能會產生新的編譯,但目前編譯的變更很小。 在許多情況下,比從頭開始建立新的編譯更有效率,因為新的編譯可以從舊編譯共享資訊。

ReplaceReference(MetadataReference, MetadataReference)

Compilation 對像是編譯程式單一調用的不可變表示法。 雖然不可變,但編譯也是隨選的,因為可以快速建立編譯,但編譯程式元件或所有程式代碼都會回應方法或屬性。 此外,編譯可能會產生新的編譯,但目前編譯的變更很小。 在許多情況下,比從頭開始建立新的編譯更有效率,因為新的編譯可以從舊編譯共享資訊。

ReplaceSyntaxTree(SyntaxTree, SyntaxTree)

Compilation 對像是編譯程式單一調用的不可變表示法。 雖然不可變,但編譯也是隨選的,因為可以快速建立編譯,但編譯程式元件或所有程式代碼都會回應方法或屬性。 此外,編譯可能會產生新的編譯,但目前編譯的變更很小。 在許多情況下,比從頭開始建立新的編譯更有效率,因為新的編譯可以從舊編譯共享資訊。

SupportsRuntimeCapability(RuntimeCapability)

判斷這個 Compilation 目標是否支援特定功能的運行時間。

(繼承來源 Compilation)
ToMetadataReference(ImmutableArray<String>, Boolean)

Compilation 對像是編譯程式單一調用的不可變表示法。 雖然不可變,但編譯也是隨選的,因為可以快速建立編譯,但編譯程式元件或所有程式代碼都會回應方法或屬性。 此外,編譯可能會產生新的編譯,但目前編譯的變更很小。 在許多情況下,比從頭開始建立新的編譯更有效率,因為新的編譯可以從舊編譯共享資訊。

WithAssemblyName(String)

使用指定的名稱建立新的編譯。

WithOptions(CompilationOptions)

使用指定的編譯選項建立新的編譯。

(繼承來源 Compilation)
WithOptions(VisualBasicCompilationOptions)

Compilation 對像是編譯程式單一調用的不可變表示法。 雖然不可變,但編譯也是隨選的,因為可以快速建立編譯,但編譯程式元件或所有程式代碼都會回應方法或屬性。 此外,編譯可能會產生新的編譯,但目前編譯的變更很小。 在許多情況下,比從頭開始建立新的編譯更有效率,因為新的編譯可以從舊編譯共享資訊。

WithReferences(IEnumerable<MetadataReference>)

使用指定的參考建立新的編譯。

WithReferences(MetadataReference[])

Compilation 對像是編譯程式單一調用的不可變表示法。 雖然不可變,但編譯也是隨選的,因為可以快速建立編譯,但編譯程式元件或所有程式代碼都會回應方法或屬性。 此外,編譯可能會產生新的編譯,但目前編譯的變更很小。 在許多情況下,比從頭開始建立新的編譯更有效率,因為新的編譯可以從舊編譯共享資訊。

WithScriptCompilationInfo(ScriptCompilationInfo)

Compilation 對像是編譯程式單一調用的不可變表示法。 雖然不可變,但編譯也是隨選的,因為可以快速建立編譯,但編譯程式元件或所有程式代碼都會回應方法或屬性。 此外,編譯可能會產生新的編譯,但目前編譯的變更很小。 在許多情況下,比從頭開始建立新的編譯更有效率,因為新的編譯可以從舊編譯共享資訊。

(繼承來源 Compilation)

擴充方法

ClassifyConversion(Compilation, ITypeSymbol, ITypeSymbol)

Compilation 對像是編譯程式單一調用的不可變表示法。 雖然不可變,但編譯也是隨選的,因為可以快速建立編譯,但編譯程式元件或所有程式代碼都會回應方法或屬性。 此外,編譯可能會產生新的編譯,但目前編譯的變更很小。 在許多情況下,比從頭開始建立新的編譯更有效率,因為新的編譯可以從舊編譯共享資訊。

WithAnalyzers(Compilation, ImmutableArray<DiagnosticAnalyzer>, AnalyzerOptions)

傳回具有附加診斷分析器的新編譯。

WithAnalyzers(Compilation, ImmutableArray<DiagnosticAnalyzer>, AnalyzerOptions, CancellationToken)
已淘汰.

傳回具有附加診斷分析器的新編譯。

WithAnalyzers(Compilation, ImmutableArray<DiagnosticAnalyzer>, CompilationWithAnalyzersOptions)

傳回具有附加診斷分析器的新編譯。

Emit(Compilation, String, String, String, String, IEnumerable<ResourceDescription>, CancellationToken)

將編譯的 IL 發出至指定的數據流。

AliasImports(Compilation)

取得編譯 AliasImports 屬性。

ClassifyConversion(Compilation, ITypeSymbol, ITypeSymbol)

決定指定型別之間有何種轉換。

GetSpecialType(Compilation, SpecialType)

取得目前編譯中的特殊類型符號。

MemberImports(Compilation)

取得編譯 MemberImports 屬性。

RootNamespace(Compilation)

取得編譯 RootNamespace 屬性。

適用於