共用方式為


SemanticEdit 結構

定義

描述兩個編譯之間的符號編輯。 例如,新增方法、方法的更新、移除型別等。

public value class SemanticEdit : IEquatable<Microsoft::CodeAnalysis::Emit::SemanticEdit>
public struct SemanticEdit : IEquatable<Microsoft.CodeAnalysis.Emit.SemanticEdit>
public readonly struct SemanticEdit : IEquatable<Microsoft.CodeAnalysis.Emit.SemanticEdit>
type SemanticEdit = struct
Public Structure SemanticEdit
Implements IEquatable(Of SemanticEdit)
繼承
SemanticEdit
實作

建構函式

SemanticEdit(SemanticEditKind, ISymbol, ISymbol, Func<SyntaxNode,SyntaxNode>, Boolean)
已淘汰.

初始化 SemanticEdit 的執行個體。

SemanticEdit(SemanticEditKind, ISymbol, ISymbol, Func<SyntaxNode,SyntaxNode>, Boolean, MethodInstrumentation)
已淘汰.

初始化 SemanticEdit 的執行個體。

SemanticEdit(SemanticEditKind, ISymbol, ISymbol, Func<SyntaxNode,SyntaxNode>, Func<SyntaxNode,Nullable<RuntimeRudeEdit>>, MethodInstrumentation)

初始化 SemanticEdit 的執行個體。

屬性

Instrumentation

要套用至方法的檢測更新。 如果 不是空的, OldSymbolNewSymbol 必須是非 Null IMethodSymbols,而且 Kind 必須是 Update

Kind

編輯的類型。

NewSymbol

稍後編譯的符號,如果編輯代表刪除,則為包含型別的符號。

OldSymbol

來自先前編譯的符號,如果編輯代表加法,則為 null。

PreserveLocalVariables

如果 SyntaxMap 不是 Null,則為 True。

RuntimeRudeEdit

將稍後編譯中的語法節點與針對節點產生的 IL 在運行時間報告的錯誤產生關聯。如果有的話。

SyntaxMap

從稍後編譯的語法節點對應到上一個編譯中的語法節點,如果 PreserveLocalVariables 為 false,則為 null,而且不需要對應或目前方法的來源與先前方法的來源相同。

方法

Equals(Object)

描述兩個編譯之間的符號編輯。 例如,新增方法、方法的更新、移除型別等。

Equals(SemanticEdit)

SemanticEdit如果它們相同 Kind ,且對應的 OldSymbolNewSymbol 符號相同,則會視為相等。 在發出的元數據/IL 上比較相等的編輯效果不一定相同。

GetHashCode()

描述兩個編譯之間的符號編輯。 例如,新增方法、方法的更新、移除型別等。

運算子

Equality(SemanticEdit, SemanticEdit)

描述兩個編譯之間的符號編輯。 例如,新增方法、方法的更新、移除型別等。

Inequality(SemanticEdit, SemanticEdit)

描述兩個編譯之間的符號編輯。 例如,新增方法、方法的更新、移除型別等。

適用於