Freigeben über


IDynamicTypeSymbol Schnittstelle

Definition

Stellt den Typ "dynamic" in C# dar.

public interface class IDynamicTypeSymbol : IEquatable<Microsoft::CodeAnalysis::ISymbol ^>, Microsoft::CodeAnalysis::ITypeSymbol
public interface IDynamicTypeSymbol : IEquatable<Microsoft.CodeAnalysis.ISymbol>, Microsoft.CodeAnalysis.ITypeSymbol
type IDynamicTypeSymbol = interface
    interface ITypeSymbol
    interface INamespaceOrTypeSymbol
    interface ISymbol
    interface IEquatable<ISymbol>
Public Interface IDynamicTypeSymbol
Implements IEquatable(Of ISymbol), ITypeSymbol
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

AllInterfaces

Die Liste aller Schnittstellen, von denen dieser Typ ein deklarierter Untertyp ist, mit Ausnahme dieses Typs selbst. Dies umfasst alle deklarierten Basisschnittstellen, alle deklarierten Basisschnittstellen von Basistypen und alle deklarierten Basisschnittstellen dieser Ergebnisse (rekursiv). Dies ist auch der effektive Schnittstellensatz eines Typparameters. Jedes Ergebnis wird genau einmal in der Liste angezeigt. Diese Liste ist toplogisch nach der Vererbungsbeziehung sortiert: Wenn der Schnittstellentyp A den Schnittstellentyp B erweitert, ist A in der Liste vor B. Dies ist nicht ganz identisch mit "alle Schnittstellen, von denen dieser Typ ein richtiger Untertyp ist", da die Varianz nicht berücksichtigt wird: AllInterfaces für IEnumerable-Zeichenfolge<> enthält kein IEnumerable-Objekt<>.

(Geerbt von ITypeSymbol)
BaseType

Der deklarierte Basistyp dieses Typs oder NULL. Der Objekttyp, Schnittstellentypen und Zeigertypen verfügen nicht über einen Basistyp. Der Basistyp eines Typparameters ist seine effektive Basisklasse.

(Geerbt von ITypeSymbol)
CanBeReferencedByName

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

(Geerbt von ISymbol)
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)
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)
Interfaces

Ruft den Satz von Schnittstellen ab, die dieser Typ direkt implementiert. Dieser Satz enthält keine Schnittstellen, die Basisschnittstellen von direkt implementierten Schnittstellen sind. Dies schließt die Schnittstellen ein, die als Einschränkungen für Typparameter deklariert werden.

(Geerbt von ITypeSymbol)
IsAbstract

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

(Geerbt von ISymbol)
IsAnonymousType

Ist dies ein Symbol für einen anonymen Typ (einschließlich anonymer VB-Delegat).

(Geerbt von ITypeSymbol)
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)
IsImplicitlyDeclared

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

(Geerbt von ISymbol)
IsNamespace

Gibt true zurück, wenn dieses Symbol ein Namespace ist. Wenn es sich nicht um einen Namespace handelt, muss es sich um einen Typ handeln.

(Geerbt von INamespaceOrTypeSymbol)
IsNativeIntegerType

True, wenn der Typ eine native ganze Zahl darstellt. In C# die Typen, die durch die Sprachschlüsselwörter "nint" und "nuint" dargestellt werden.

(Geerbt von ITypeSymbol)
IsOverride

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

(Geerbt von ISymbol)
IsReadOnly

True, wenn der Typ schreiblos ist.

(Geerbt von ITypeSymbol)
IsRecord

Bei Quellsymbolen true, wenn der Typ ein Datensatz ist. Bei Metadatensymbolen true, wenn der Typ ein Datensatz und ein Verweistyp ist.

(Geerbt von ITypeSymbol)
IsReferenceType

True, wenn dieser Typ als Verweistyp bekannt ist. Es ist nie der Fall, dass IsReferenceType und IsValueType beide true zurückgeben. Für einen nicht eingeschränkten Typparameter IsReferenceTypeIsValueType wird jedoch false zurückgegeben.

(Geerbt von ITypeSymbol)
IsRefLikeType

True, wenn der Typ ref-like ist, d. h. er folgt Regeln, die clR by-ref-Variablen ähneln. False, wenn der Typ nicht ref-like ist oder wenn die Sprache kein Konzept von ref-ähnlichen Typen hat.

(Geerbt von ITypeSymbol)
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)
IsTupleType

Ist dies ein Symbol für ein Tupel .

(Geerbt von ITypeSymbol)
IsType

Gibt true zurück, wenn es sich bei diesen Symbolen um einen Typ handelt. Wenn es sich nicht um einen Typ handelt, muss es sich um einen Namespace handeln.

(Geerbt von INamespaceOrTypeSymbol)
IsUnmanagedType

True, wenn der Typ gemäß den Sprachregeln nicht verwaltet wird. False, wenn verwaltet wird oder wenn die Sprache kein Konzept nicht verwalteter Typen hat.

(Geerbt von ITypeSymbol)
IsValueType

True, wenn dieser Typ als Werttyp bekannt ist. Es ist nie der Fall, dass IsReferenceType und IsValueType beide true zurückgeben. Für einen nicht eingeschränkten Typparameter IsReferenceTypeIsValueType wird jedoch false zurückgegeben.

(Geerbt von ITypeSymbol)
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 das Suffix "'1", "'2" usw., 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

Nullable-Anmerkung, die dem Typ zugeordnet ist, oder None , wenn keine vorhanden ist.

(Geerbt von ITypeSymbol)
OriginalDefinition

Die ursprüngliche Definition dieses Symbols. Wenn dieses Symbol aus einem anderen Symbol nach Typersetzung erstellt wird, OriginalDefinition ruft das ursprüngliche Symbol ab, wie es in der Quelle oder in den Metadaten definiert wurde.

(Geerbt von ITypeSymbol)
SpecialType

Ein enumerierter Wert, der bestimmte "spezielle" Typen identifiziert, z Object. B. . Gibt zurück None , wenn der Typ nicht speziell ist.

(Geerbt von ITypeSymbol)
TypeKind

Ein enumerierter Wert, der angibt, ob es sich bei diesem Typ um ein Array, einen Zeiger, eine Enumeration usw. handelt.

(Geerbt von ITypeSymbol)

Methoden

Accept(SymbolVisitor)

Stellt den Typ "dynamic" in C# dar.

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

Stellt den Typ "dynamic" in C# dar.

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

Stellt den Typ "dynamic" in C# dar.

(Geerbt von ISymbol)
Equals(ISymbol, SymbolEqualityComparer)

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

(Geerbt von ISymbol)
FindImplementationForInterfaceMember(ISymbol)

Gibt das entsprechende Symbol in diesem Typ oder einen Basistyp zurück, der interfaceMember (implizit oder explizit) implementiert, oder NULL, wenn kein solches Symbol vorhanden ist (was entweder daran liegen kann, dass dieser Typ den Container von interfaceMember nicht implementiert oder dieser Typ keinen Member bereitstellt, der interfaceMember erfolgreich implementiert).

(Geerbt von ITypeSymbol)
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)
GetMembers()

Ruft alle Member dieses Symbols ab.

(Geerbt von INamespaceOrTypeSymbol)
GetMembers(String)

Ruft alle Member dieses Symbols ab, die einen bestimmten Namen haben.

(Geerbt von INamespaceOrTypeSymbol)
GetTypeMembers()

Ruft alle Member dieses Symbols ab, die Typen sind.

(Geerbt von INamespaceOrTypeSymbol)
GetTypeMembers(String)

Rufen Sie alle Member dieses Symbols ab, bei denen es sich um Typen handelt, die einen bestimmten Namen haben, von beliebiger Arität.

(Geerbt von INamespaceOrTypeSymbol)
GetTypeMembers(String, Int32)

Abrufen aller Member dieses Symbols, bei denen es sich um Typen mit einem bestimmten Namen und einer bestimmten Arität handelt

(Geerbt von INamespaceOrTypeSymbol)
ToDisplayParts(NullableFlowState, SymbolDisplayFormat)

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

(Geerbt von ITypeSymbol)
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(NullableFlowState, SymbolDisplayFormat)

Konvertiert einen ITypeSymbol und einen Nullable-Flusszustand in eine Zeichenfolgendarstellung.

(Geerbt von ITypeSymbol)
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)
ToMinimalDisplayParts(SemanticModel, NullableFlowState, 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 ITypeSymbol)
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)
ToMinimalDisplayString(SemanticModel, NullableFlowState, Int32, SymbolDisplayFormat)

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

(Geerbt von ITypeSymbol)
WithNullableAnnotation(NullableAnnotation)

Gibt den gleichen Typ wie dieser Typ zurück, jedoch mit der angegebenen Nullable-Anmerkung.

(Geerbt von ITypeSymbol)

Erweiterungsmethoden

IsMustOverride(ISymbol)

Stellt den Typ "dynamic" in C# dar.

IsNotOverridable(ISymbol)

Stellt den Typ "dynamic" in C# dar.

IsOverridable(ISymbol)

Stellt den Typ "dynamic" in C# dar.

IsOverrides(ISymbol)

Stellt den Typ "dynamic" in C# dar.

IsShared(ISymbol)

Bestimmt, ob das Symbol freigegeben ist.

Gilt für: