Freigeben über


SemanticEdit Struktur

Definition

Beschreibt eine Symbolbearbeitung zwischen zwei Kompilierungen. Beispiel: Hinzufügen einer Methode, Aktualisieren einer Methode, Entfernen eines Typs usw.

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)
Vererbung
SemanticEdit
Implementiert

Konstruktoren

SemanticEdit(SemanticEditKind, ISymbol, ISymbol, Func<SyntaxNode,SyntaxNode>, Boolean, MethodInstrumentation)
Veraltet.

Initialisiert eine Instanz von SemanticEdit.

SemanticEdit(SemanticEditKind, ISymbol, ISymbol, Func<SyntaxNode,SyntaxNode>, Boolean)
Veraltet.

Initialisiert eine Instanz von SemanticEdit.

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

Initialisiert eine Instanz von SemanticEdit.

Eigenschaften

Instrumentation

Instrumentierungsupdate, das auf eine Methode angewendet werden soll. Wenn nicht leer, OldSymbol und NewSymbol muss ungleich NULL IMethodSymbols sein, und Kind muss sein Update.

Kind

Der Typ der Bearbeitung.

NewSymbol

Das Symbol aus der späteren Kompilierung oder das Symbol des enthaltenden Typs aus der späteren Kompilierung, wenn die Bearbeitung einen Löschvorgang darstellt.

OldSymbol

Das Symbol aus der früheren Kompilierung oder NULL, wenn die Bearbeitung einen Zusatz darstellt.

PreserveLocalVariables

True, wenn SyntaxMap nicht NULL ist.

RuntimeRudeEdit

Ordnet einen Syntaxknoten in der späteren Kompilierung einem Fehler zu, der zur Laufzeit von der für den Knoten generierten IL gemeldet werden soll, sofern vorhanden.

SyntaxMap

Eine Zuordnung vom Syntaxknoten in der späteren Kompilierung zum Syntaxknoten in der vorherigen Kompilierung oder NULL, wenn PreserveLocalVariables false ist und die Zuordnung nicht benötigt wird, oder die Quelle der aktuellen Methode entspricht der Quelle der vorherigen Methode.

Methoden

Equals(Object)

Beschreibt eine Symbolbearbeitung zwischen zwei Kompilierungen. Beispiel: Hinzufügen einer Methode, Aktualisieren einer Methode, Entfernen eines Typs usw.

Equals(SemanticEdit)

SemanticEdits werden als gleich angesehen, wenn sie gleich Kind sind und die entsprechenden OldSymbol Symbole und NewSymbol identisch sind. Die Auswirkungen von Bearbeitungen, die gleich auf die ausgegebenen Metadaten/IL vergleichen, sind nicht unbedingt identisch.

GetHashCode()

Beschreibt eine Symbolbearbeitung zwischen zwei Kompilierungen. Beispiel: Hinzufügen einer Methode, Aktualisieren einer Methode, Entfernen eines Typs usw.

Operatoren

Equality(SemanticEdit, SemanticEdit)

Beschreibt eine Symbolbearbeitung zwischen zwei Kompilierungen. Beispiel: Hinzufügen einer Methode, Aktualisieren einer Methode, Entfernen eines Typs usw.

Inequality(SemanticEdit, SemanticEdit)

Beschreibt eine Symbolbearbeitung zwischen zwei Kompilierungen. Beispiel: Hinzufügen einer Methode, Aktualisieren einer Methode, Entfernen eines Typs usw.

Gilt für: