Freigeben über


IArrayTypeSymbol Schnittstelle

Definition

Stellt ein Array dar.

public interface class IArrayTypeSymbol : IEquatable<Microsoft::CodeAnalysis::ISymbol ^>, Microsoft::CodeAnalysis::ITypeSymbol
public interface IArrayTypeSymbol : IEquatable<Microsoft.CodeAnalysis.ISymbol>, Microsoft.CodeAnalysis.ITypeSymbol
type IArrayTypeSymbol = interface
    interface ITypeSymbol
    interface INamespaceOrTypeSymbol
    interface ISymbol
    interface IEquatable<ISymbol>
Public Interface IArrayTypeSymbol
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 for IEnumerable-Zeichenfolge<> enthält kein IEnumerable-Objekt<>.

(Geerbt von ITypeSymbol)
BaseType

Der deklarierte Basistyp dieses Typs oder NULL. Die Objekttypen, 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)
CustomModifiers

Benutzerdefinierte Modifizierer, die dem Arraytyp zugeordnet sind, oder ein leeres Array, wenn keine vorhanden ist.

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)
ElementNullableAnnotation

Ruft die NULL-Zulässigkeit der im Array gespeicherten Elemente auf oberster Ebene ab.

ElementType

Ruft den Typ der im Array gespeicherten Elemente ab.

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, den 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# werden die Durch die Sprachschlüsselwörter "nint" und "nuint" dargestellt.

(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 schreibgeschützt ist.

(Geerbt von ITypeSymbol)
IsRecord

Für Quellsymbole gilt true, wenn der Typ ein Datensatz ist. Bei Metadatensymbolen gilt true, wenn es sich bei dem Typ um einen Datensatz und einen Verweistyp handelt.

(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 mit CLR-By-Ref-Variablen vergleichbar sind. 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)
IsSZArray

Ist dies ein nullbasiertes eindimensionales Array, d. h. SZArray in CLR-Begriffen. SZArray ist ein Arraytyp, der in Metadaten mit ELEMENT_TYPE_SZARRAY codiert ist (immer single-dim array mit 0 unterer Grenze). Der Nicht-SZArray-Typ wird in Metadaten mit ELEMENT_TYPE_ARRAY und optionalen Größen und Untergrenzen codiert. Obwohl nicht-SZArray auch ein Array mit nur einem Dim mit 0 unterer Grenze sein kann, ist die Codierung dieser Typen in Metadaten eindeutig.

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 von nicht verwalteten 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)
LowerBounds

Untergrenzen für Dimensionen nach Position angegeben. Die Länge kann kleiner als Ranksein, was bedeutet, dass für einige nachgestellte Dimensionen nicht die untere Grenze angegeben ist. Der häufigste Fall ist, dass alle Dimensionen nullgebunden sind. In diesem Fall wird ein Standardarray (Nothing in VB) zurückgegeben.

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 durch Typersetzung erstellt wird, OriginalDefinition ruft das ursprüngliche Symbol ab, wie es in der Quelle oder in den Metadaten definiert wurde.

(Geerbt von ITypeSymbol)
Rank

Ruft die Anzahl der Dimensionen dieses Arrays ab. Ein reguläres eindimensionales Array hat Rang 1, ein zweidimensionales Array hat Rang 2 usw.

Sizes

Angegebene Größen für Dimensionen nach Position. Die Länge kann kleiner als Ranksein, was bedeutet, dass für einige nachgestellte Dimensionen nicht die angegebene Größe angegeben ist. Der häufigste Fall ist, dass keine der Dimensionen die angegebene Größe aufweist. Es wird ein leeres Array zurückgegeben.

SpecialType

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

(Geerbt von ITypeSymbol)
TypeKind

Ein aufgezählter 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 ein Array dar.

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

Stellt ein Array dar.

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

Stellt ein Array dar.

(Geerbt von ISymbol)
Equals(IArrayTypeSymbol)

Stellt ein Array dar.

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 implementiert (implizit oder explizit), 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, die jeweils über eine Art verfügen. Nützlich zum Kolorieren 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 nullablen 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, die jeweils eine Art aufweisen. Kann an einen bestimmten Speicherort im Quellcode angepasst werden. Nützlich zum Kolorieren 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, aber mit der angegebenen NULLable-Anmerkung.

(Geerbt von ITypeSymbol)

Erweiterungsmethoden

IsMustOverride(ISymbol)

Stellt ein Array dar.

IsNotOverridable(ISymbol)

Stellt ein Array dar.

IsOverridable(ISymbol)

Stellt ein Array dar.

IsOverrides(ISymbol)

Stellt ein Array dar.

IsShared(ISymbol)

Bestimmt, ob das Symbol freigegeben ist.

Gilt für: