Freigeben über


ILocalSymbol Schnittstelle

Definition

Stellt eine lokale Variable im Methodentext dar.

public interface class ILocalSymbol : IEquatable<Microsoft::CodeAnalysis::ISymbol ^>, Microsoft::CodeAnalysis::ISymbol
public interface ILocalSymbol : IEquatable<Microsoft.CodeAnalysis.ISymbol>, Microsoft.CodeAnalysis.ISymbol
type ILocalSymbol = interface
    interface ISymbol
    interface IEquatable<ISymbol>
Public Interface ILocalSymbol
Implements IEquatable(Of ISymbol), ISymbol
Implementiert

Hinweise

Diese Schnittstelle ist für die Implementierung durch die zugehörigen APIs reserviert. Wir behalten uns das Recht vor, diese in Zukunft zu ändern.

Eigenschaften

CanBeReferencedByName

Gibt true zurück, wenn auf dieses Symbol mit seinem Namen im Code verwiesen werden kann.

(Geerbt von ISymbol)
ConstantValue

Ruft den konstanten Wert dieser lokalen Variablen ab.

ContainingAssembly

Ruft den IAssemblySymbol für die enthaltende Assembly ab. Gibt NULL zurück, wenn das Symbol für mehrere Assemblys gemeinsam verwendet wird.

(Geerbt von ISymbol)
ContainingModule

Ruft den IModuleSymbol für das enthaltende Modul ab. Gibt NULL zurück, wenn das Symbol über mehrere Module hinweg gemeinsam verwendet wird.

(Geerbt von ISymbol)
ContainingNamespace

Ruft den INamespaceSymbol für den nächstgelegenen einschließenden Namespace ab. Gibt NULL zurück, wenn das Symbol nicht in einem Namespace enthalten ist.

(Geerbt von ISymbol)
ContainingSymbol

Ruft den ISymbol für das direkt enthaltende Symbol ab.

(Geerbt von ISymbol)
ContainingType

Ruft den INamedTypeSymbol für den enthaltenden Typ ab. Gibt NULL zurück, wenn das Symbol nicht in einem Typ enthalten ist.

(Geerbt von ISymbol)
DeclaredAccessibility

Ruft einen Accessibility ab, der die deklarierte Barrierefreiheit für das Symbol angibt. Gibt NotApplicable zurück, wenn keine Barrierefreiheit deklariert ist.

(Geerbt von ISymbol)
DeclaringSyntaxReferences

Rufen Sie die Syntaxknoten ab, auf denen dieses Symbol in der Quelle deklariert wurde. Einige Symbole (z. B. partielle Klassen) können an mehreren Speicherorten definiert werden. Diese Eigenschaft sollte nur einen oder mehrere Syntaxknoten zurückgeben, wenn das Symbol im Quellcode deklariert und auch nicht implizit deklariert wurde (siehe isImplicitlyDeclared-Eigenschaft).

Beachten Sie, dass für das Namespacesymbol die Deklarierungssyntax möglicherweise das Deklarieren eines geschachtelten Namespaces ist. Beispielsweise der deklarierende Syntaxknoten für N1 in "namespace N1. N2 {...}" ist die gesamte NamespaceDeclarationSyntax für N1. N2. Für den globalen Namespace ist die Deklarierungssyntax die CompilationUnitSyntax.

(Geerbt von ISymbol)
HasConstantValue

Gibt false zurück, wenn die lokale Variable nicht als "const" deklariert wurde oder konstanter Wert ausgelassen oder fehlerhaft ist. Andernfalls „True“.

HasUnsupportedMetadata

Gibt an, dass dieses Symbol Metadaten verwendet, die von der Sprache nicht unterstützt werden können.

Beispiele:

  • Zeigertypen in VB
  • ByRef-Rückgabetyp
  • Erforderliche benutzerdefinierte Modifizierer

Dies unterscheidet sich beispielsweise von Verweisen auf Metadatensymbole, die in Assemblys definiert sind, auf die nicht verwiesen wurde. Symbole, bei denen true zurückgegeben wird, können nie erfolgreich verwendet werden und sollten daher in keiner IDE-Funktion angezeigt werden.

Dies wird für Metadatensymbole wie folgt festgelegt:

  • Typ: Wenn ein Typ nicht unterstützt wird (z. B. ein Zeigertyp)
  • Methode: Parameter oder Rückgabetyp wird nicht unterstützt
  • Feld: Typ wird nicht unterstützt.
  • Ereignis: Typ wird nicht unterstützt.
  • Eigenschaft: Typ wird nicht unterstützt.
  • Parameter: Typ wird nicht unterstützt.

(Geerbt von ISymbol)
IsAbstract

Ruft einen Wert ab, der angibt, ob das Symbol abstrakt ist.

(Geerbt von ISymbol)
IsConst

Gibt true zurück, wenn diese lokale Variable als "const" deklariert wurde (d. h. eine konstante Deklaration ist). Gibt auch true für einen Enumerationsmember zurück.

IsDefinition

Ruft einen Wert ab, der angibt, ob das Symbol die ursprüngliche Definition ist. Gibt false zurück, wenn das Symbol von einem anderen Symbol abgeleitet wird, durch Typersetzung für instance.

(Geerbt von ISymbol)
IsExtern

Ruft einen Wert ab, der angibt, ob das Symbol extern definiert ist.

(Geerbt von ISymbol)
IsFixed

Gibt true zurück, wenn die lokale Variable mit fixed-pointer-initializer deklariert wird (im unsicheren Kontext).

IsForEach

Gibt true zurück, wenn diese lokale Variable als Iterationsvariable deklariert wird.

IsFunctionValue

Gibt true zurück, wenn es sich bei dieser lokalen Variablen um eine Funktionsrückgabevariable handelt, deren Name dem Namen der Funktion entspricht, deren Typ der Rückgabetyp der Funktion ist und deren Anfangswert der Standardwert ihres Typs ist.

IsImplicitlyDeclared

Gibt true zurück, wenn dieses Symbol automatisch vom Compiler erstellt wurde und keine explizite entsprechende Quellcodedeklaration aufweist.

(Geerbt von ISymbol)
IsOverride

Ruft einen Wert ab, der angibt, ob das Symbol eine Außerkraftsetzung eines Basisklassensymbols ist.

(Geerbt von ISymbol)
IsRef

Gibt true zurück, wenn es sich bei diesem lokalen Element um ein ref local oder ein ref readonly local handelt. Verwenden Sie RefKind , um ausführlichere Informationen zu erhalten.

IsSealed

Ruft einen Wert ab, der angibt, ob das Symbol versiegelt ist.

(Geerbt von ISymbol)
IsStatic

Ruft einen Wert ab, der angibt, ob das Symbol statisch ist.

(Geerbt von ISymbol)
IsUsing

Gibt true zurück, wenn die lokale Variable im Ressourcenerwerb einer "using-Anweisung" deklariert wird; andernfalls false

IsVirtual

Ruft einen Wert ab, der angibt, ob das Symbol virtuell ist.

(Geerbt von ISymbol)
Kind

Ruft die ab, die SymbolKind angibt, um welche Art von Symbol es sich handelt.

(Geerbt von ISymbol)
Language

Ruft die Quellsprache ("C#" oder "Visual Basic") ab.

(Geerbt von ISymbol)
Locations

Ruft die Speicherorte ab, an denen das Symbol ursprünglich definiert wurde, entweder in der Quelle oder in den Metadaten. Einige Symbole (z. B. partielle Klassen) können an mehreren Speicherorten definiert werden.

(Geerbt von ISymbol)
MetadataName

Ruft den Namen eines Symbols ab, wie er in Metadaten angezeigt wird. In den meisten Fällen ist dies mit der Name-Eigenschaft identisch, mit den folgenden Ausnahmen:

  1. Der Metadatenname generischer Typen enthält "'1", "'2" usw. Suffix, das die Anzahl der Typparameter angibt (es enthält jedoch keine Namen von enthaltenden Typen oder Namespaces).
  2. Für den Metadatennamen expliziter Schnittstellennamen wurden Leerzeichen entfernt, verglichen mit der Name-Eigenschaft.
  3. Die Länge von Namen ist auf die Metadateneinschränkungen beschränkt.
(Geerbt von ISymbol)
MetadataToken

Ruft das diesem Symbol zugeordnete Metadatentoken ab, oder 0, wenn das Symbol nicht aus Metadaten geladen wird.

(Geerbt von ISymbol)
Name

Ruft den Symbolnamen ab. Gibt die leere Zeichenfolge zurück, wenn sie unbenannt ist.

(Geerbt von ISymbol)
NullableAnnotation

Ruft die NULL-Zulässigkeit dieser lokalen Variablen auf oberster Ebene ab.

OriginalDefinition

Ruft die ISymbol für die ursprüngliche Definition des Symbols ab. Wenn dieses Symbol von einem anderen Symbol abgeleitet wird, wird durch Typersetzung für instance das ursprüngliche Symbol abgerufen, wie es in der Quelle oder in den Metadaten definiert wurde.

(Geerbt von ISymbol)
RefKind

Gibt an, ob es sich bei der Variablen um eine ref oder ref readonly local handelt.

ScopedKind

Gibt den bereichsbezogenen Typ des lokalen zurück.

Type

Ruft den Typ dieser lokalen Variablen ab.

Methoden

Accept(SymbolVisitor)

Stellt eine lokale Variable im Methodentext dar.

(Geerbt von ISymbol)
Accept<TArgument,TResult>(SymbolVisitor<TArgument,TResult>, TArgument)

Stellt eine lokale Variable im Methodentext dar.

(Geerbt von ISymbol)
Accept<TResult>(SymbolVisitor<TResult>)

Stellt eine lokale Variable im Methodentext dar.

(Geerbt von ISymbol)
Equals(ISymbol, SymbolEqualityComparer)

Bestimmt, ob dieses Symbol gleich einem anderen ist, gemäß den Regeln der bereitgestellten SymbolEqualityComparer

(Geerbt von ISymbol)
GetAttributes()

Ruft die Attribute für das Symbol ab. Gibt ein leeres IEnumerable<T> zurück, wenn keine Attribute vorhanden sind.

(Geerbt von ISymbol)
GetDocumentationCommentId()

Gibt die Dokumentationskommentar-ID für das Symbol oder NULL zurück, wenn das Symbol keine Dokumentationskommentare unterstützt.

(Geerbt von ISymbol)
GetDocumentationCommentXml(CultureInfo, Boolean, CancellationToken)

Ruft den XML-Code (als Text) für den Kommentar ab, der dem Symbol zugeordnet ist.

(Geerbt von ISymbol)
ToDisplayParts(SymbolDisplayFormat)

Konvertieren Sie ein Symbol in ein Array von Zeichenfolgenteilen, von denen jeder eine Art hat. Nützlich zum Einfärben der Anzeigezeichenfolge.

(Geerbt von ISymbol)
ToDisplayString(SymbolDisplayFormat)

Konvertiert das Symbol in eine Zeichenfolgendarstellung.

(Geerbt von ISymbol)
ToMinimalDisplayParts(SemanticModel, Int32, SymbolDisplayFormat)

Konvertieren Sie ein Symbol in ein Array von Zeichenfolgenteilen, von denen jeder eine Art hat. Kann an einen bestimmten Speicherort im Quellcode angepasst werden. Nützlich zum Einfärben der Anzeigezeichenfolge.

(Geerbt von ISymbol)
ToMinimalDisplayString(SemanticModel, Int32, SymbolDisplayFormat)

Konvertieren Sie ein Symbol in eine Zeichenfolge, die dem Benutzer angezeigt werden kann. Kann an einen bestimmten Speicherort im Quellcode angepasst werden.

(Geerbt von ISymbol)

Erweiterungsmethoden

IsCatch(ILocalSymbol)

Stellt eine lokale Variable im Methodentext dar.

IsFor(ILocalSymbol)

Stellt eine lokale Variable im Methodentext dar.

IsForEach(ILocalSymbol)

Stellt eine lokale Variable im Methodentext dar.

IsMustOverride(ISymbol)

Stellt eine lokale Variable im Methodentext dar.

IsNotOverridable(ISymbol)

Stellt eine lokale Variable im Methodentext dar.

IsOverridable(ISymbol)

Stellt eine lokale Variable im Methodentext dar.

IsOverrides(ISymbol)

Stellt eine lokale Variable im Methodentext dar.

IsShared(ISymbol)

Bestimmt, ob das Symbol freigegeben ist.

Gilt für: