Freigeben über


INamedTypeSymbol Schnittstelle

Definition

Stellt einen anderen Typ als ein Array, einen Zeiger und einen Typparameter dar.

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

Gibt die Arität dieses Typs oder die Anzahl der benötigten Typparameter zurück. Ein nicht generischer Typ hat keine Arität.

AssociatedSymbol

Für implizit deklarierte Delegattypen wird das EventSymbol zurückgegeben, durch das dieser Delegattyp generiert wurde. Für alle anderen Typen wird NULL zurückgegeben. Beachten Sie, dass der Satz der möglichen zugeordneten Symbole in Zukunft erweitert werden kann, um Änderungen in den Sprachen widerzuspiegeln.

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

Gibt das Typsymbol zurück, aus dem dieser Typ erstellt wurde. Dieses Typsymbol hat den gleichen enthaltenden Typ (falls vorhanden), verfügt aber über Typargumente, die mit den Typparametern identisch sind (obwohl der enthaltende Typ möglicherweise nicht vorhanden ist).

Constructors

Rufen Sie die instance und statischen Konstruktoren für diesen Typ 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)
DelegateInvokeMethod

Ruft für Delegattypen die Invoke-Methode des Delegaten ab. Gibt null für alle anderen Typen zurück. Beachten Sie, dass ein falsch formatierter Delegattyp aus Metadaten importiert werden kann, der keine Invoke-Methode aufweist. Ein solcher Typ wird als Delegat klassifiziert, aber seine DelegateInvokeMethod wäre NULL.

EnumUnderlyingType

Ruft für Enumerationstypen den zugrunde liegenden Typ ab. Gibt null für alle anderen Typen zurück.

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

Rufen Sie die instance-Konstruktoren für diesen Typ ab.

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

Gibt an, dass die Klasse oder die Schnittstelle aus einem anderen Modul importiert wird. Siehe Import und ComImportAttribute

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

Gibt an, dass der Typ in der Quelle deklariert ist und nur in der Datei sichtbar ist, in der er deklariert ist.

IsGenericType

True, wenn dieser oder ein enthaltener Typ Über Typparameter verfügt.

IsImplicitClass

Gibt true zurück, wenn der Typ die implizite Klasse ist, die ungültige globale Member enthält (z. B. Methoden oder Anweisungen in einer Nicht-Skriptdatei).

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

Gibt true zurück, wenn der Typ eine Script-Klasse ist. Es kann sich um eine interaktive Übermittlungsklasse oder eine Script-Klasse in einer csx-Datei handeln.

IsSealed

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

(Geerbt von ISymbol)
IsSerializable

True, wenn der Typ serialisierbar ist (hat serialisierbares Metadatenflag).

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

True, wenn dies ein Verweis auf einen ungebundenen generischen Typ ist. Ein generischer Typ gilt als ungebunden , wenn alle Typargumentlisten in seinem vollqualifizierten Namen leer sind. Beachten Sie, dass die Typargumente eines ungebundenen generischen Typs als Fehlertypen zurückgegeben werden, da sie nicht wirklich über Typargumente verfügen. Ein nicht gebundener generischer Typ ergibt NULL für seinen BaseType und ein leeres Ergebnis für seine Schnittstellen.

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

Gibt eine Auflistung von Namen von Membern zurück, die innerhalb dieses Typs deklariert wurden.

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

Bestimmt, ob das Symbol Erweiterungsmethoden enthalten kann. Wenn false, enthält das Symbol keine Erweiterungsmethoden.

Name

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

(Geerbt von ISymbol)
NativeIntegerUnderlyingType

Wenn dies eine native ganze Zahl ist, gibt das Symbol für den zugrunde liegenden Typ zurück, entweder IntPtr oder UIntPtr. Andernfalls wird NULL zurückgegeben.

NullableAnnotation

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

(Geerbt von ITypeSymbol)
OriginalDefinition

Rufen Sie die ursprüngliche Definition dieses Typsymbols ab. Wenn dieses Symbol von einem anderen Symbol abgeleitet wird, z. B. durch Ersetzung des Typs, ruft dies das ursprüngliche Symbol ab, wie es in der Quelle oder in den Metadaten definiert wurde.

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

Ruft die statischen Konstruktoren für diesen Typ ab.

TupleElements

Gibt Felder zurück, die Tupelelemente für Typen darstellen, die Tupel sind.

Wenn es sich bei diesem Typ nicht um ein Tupel handelt, wird der Standardwert zurückgegeben.

TupleUnderlyingType

Wenn es sich um einen Tupeltyp mit Elementnamen handelt, wird das Symbol für den Tupeltyp ohne Namen zurückgegeben. Andernfalls wird NULL zurückgegeben. Das Type-Argument, das dem Typ des Erweiterungsfelds (VT[8] entspricht. Rest), die sich an der 8. (eine basierenden) Position befindet, ist immer ein Symbol für ein anderes Tupel und nicht für den zugrunde liegenden Typ.

TypeArgumentNullableAnnotations

Gibt die NULL-Zulässigkeit der Typargumente auf oberster Ebene zurück, die durch die Typparameter ersetzt wurden. Wenn für einen bestimmten Typparameter nichts ersetzt wurde, None wird für dieses Typargument zurückgegeben.

TypeArguments

Gibt die Typargumente zurück, die durch die Typparameter ersetzt wurden. Wenn für einen bestimmten Typparameter nichts ersetzt wurde, wird der Typparameter selbst als Typargument betrachtet.

TypeArgumentsNullableAnnotations

Gibt die NULL-Zulässigkeit der Typargumente auf oberster Ebene zurück, die durch die Typparameter ersetzt wurden. Wenn für einen bestimmten Typparameter nichts ersetzt wurde, NotApplicable wird für dieses Typargument zurückgegeben.

TypeKind

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

(Geerbt von ITypeSymbol)
TypeParameters

Gibt die Typparameter zurück, über die dieser Typ verfügt. Wenn es sich um einen nicht generischen Typ handelt, wird ein leerer ImmutableArray-Wert zurückgegeben.

Methoden

Accept(SymbolVisitor)

Stellt einen anderen Typ als ein Array, einen Zeiger und einen Typparameter dar.

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

Stellt einen anderen Typ als ein Array, einen Zeiger und einen Typparameter dar.

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

Stellt einen anderen Typ als ein Array, einen Zeiger und einen Typparameter dar.

(Geerbt von ISymbol)
Construct(ImmutableArray<ITypeSymbol>, ImmutableArray<NullableAnnotation>)

Gibt einen konstruierten Typ aufgrund seiner Typargumente und typargumentablen Anmerkungen zurück.

Construct(ITypeSymbol[])

Gibt einen konstruierten Typ aufgrund seiner Typargumente zurück.

ConstructUnboundGenericType()

Gibt einen ungebundenen generischen Typ dieses benannten Typs zurück.

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)
GetTypeArgumentCustomModifiers(Int32)

Gibt benutzerdefinierte Modifizierer für das Typargument zurück, das durch den Typparameter ersetzt wurde. Die Modifizierer entsprechen dem Typargument in derselben Ordnungszahl innerhalb des TypeArguments Arrays. Gibt ein leeres Array zurück, wenn keine Modifizierer vorhanden sind.

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 einen anderen Typ als ein Array, einen Zeiger und einen Typparameter dar.

IsNotOverridable(ISymbol)

Stellt einen anderen Typ als ein Array, einen Zeiger und einen Typparameter dar.

IsOverridable(ISymbol)

Stellt einen anderen Typ als ein Array, einen Zeiger und einen Typparameter dar.

IsOverrides(ISymbol)

Stellt einen anderen Typ als ein Array, einen Zeiger und einen Typparameter dar.

IsShared(ISymbol)

Bestimmt, ob das Symbol freigegeben ist.

Gilt für: