ITypeSymbol Schnittstelle
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Stellt einen Typ dar.
public interface class ITypeSymbol : IEquatable<Microsoft::CodeAnalysis::ISymbol ^>, Microsoft::CodeAnalysis::INamespaceOrTypeSymbol
public interface ITypeSymbol : IEquatable<Microsoft.CodeAnalysis.ISymbol>, Microsoft.CodeAnalysis.INamespaceOrTypeSymbol
type ITypeSymbol = interface
interface INamespaceOrTypeSymbol
interface ISymbol
interface IEquatable<ISymbol>
Public Interface ITypeSymbol
Implements IEquatable(Of ISymbol), INamespaceOrTypeSymbol
- 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 for IEnumerable-Zeichenfolge<> enthält kein IEnumerable-Objekt<>. |
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. |
CanBeReferencedByName |
Gibt true zurück, wenn auf dieses Symbol durch seinen Namen im Code verwiesen werden kann. (Geerbt von ISymbol) |
ContainingAssembly |
Ruft die IAssemblySymbol für die enthaltende Assembly ab. Gibt NULL zurück, wenn das Symbol für mehrere Assemblys freigegeben wird. (Geerbt von ISymbol) |
ContainingModule |
Ruft das IModuleSymbol für das enthaltende Modul ab. Gibt NULL zurück, wenn das Symbol für mehrere Module freigegeben wird. (Geerbt von ISymbol) |
ContainingNamespace |
Ruft den INamespaceSymbol für den nächstgelegenen umschließenden Namespace ab. Gibt NULL zurück, wenn das Symbol nicht in einem Namespace enthalten ist. (Geerbt von ISymbol) |
ContainingSymbol |
Ruft das ISymbol für das sofort 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 die deklarierende Syntax für das Namespacesymbol möglicherweise einen geschachtelten Namespace deklariert. 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 deklarierende Syntax die CompilationUnitSyntax. (Geerbt von ISymbol) |
HasUnsupportedMetadata |
Gibt an, dass dieses Symbol Metadaten verwendet, die von der Sprache nicht unterstützt werden können. Beispiele:
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 keinem IDE-Feature angezeigt werden. Dies wird für Metadatensymbole wie folgt festgelegt:
|
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. |
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). |
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 es sich bei diesem Symbol um einen Namespace handelt. 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. |
IsOverride |
Ruft einen Wert ab, der angibt, ob das Symbol eine Überschreibung eines Basisklassensymbols ist. (Geerbt von ISymbol) |
IsReadOnly |
True, wenn der Typ schreibgeschützt ist. |
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. |
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. |
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. |
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 . |
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. |
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. |
IsVirtual |
Ruft einen Wert ab, der angibt, ob das Symbol virtuell ist. (Geerbt von ISymbol) |
Kind |
Ruft das SymbolKind ab, das 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 Jahren ist dies mit der Name-Eigenschaft identisch, mit den folgenden Ausnahmen:
|
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 nicht benannt ist. (Geerbt von ISymbol) |
NullableAnnotation |
Nullable-Anmerkung, die dem Typ zugeordnet ist, oder None wenn keine vorhanden ist. |
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. |
SpecialType |
Ein aufgezählter Wert, der bestimmte "spezielle" Typen identifiziert, z. B Object. . Gibt zurück None , wenn der Typ nicht speziell ist. |
TypeKind |
Ein aufgezählter Wert, der angibt, ob es sich bei diesem Typ um ein Array, einen Zeiger, eine Enumeration usw. handelt. |
Methoden
Accept(SymbolVisitor) |
Stellt einen Typ dar. (Geerbt von ISymbol) |
Accept<TArgument,TResult>(SymbolVisitor<TArgument,TResult>, TArgument) |
Stellt einen Typ dar. (Geerbt von ISymbol) |
Accept<TResult>(SymbolVisitor<TResult>) |
Stellt einen Typ 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 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). |
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() |
Rufen Sie alle Elemente dieses Symbols ab. (Geerbt von INamespaceOrTypeSymbol) |
GetMembers(String) |
Rufen Sie alle Elemente dieses Symbols ab, die einen bestimmten Namen haben. (Geerbt von INamespaceOrTypeSymbol) |
GetTypeMembers() |
Rufen Sie alle Elemente dieses Symbols ab, die Typen sind. (Geerbt von INamespaceOrTypeSymbol) |
GetTypeMembers(String) |
Rufen Sie alle Elemente dieses Symbols ab, bei denen es sich um Typen handelt, die einen bestimmten Namen haben, von beliebiger Aheit. (Geerbt von INamespaceOrTypeSymbol) |
GetTypeMembers(String, Int32) |
Abrufen aller Elemente dieses Symbols, bei denen es sich um Typen handelt, die einen bestimmten Namen und eine bestimmte Arität aufweisen (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. |
ToDisplayParts(SymbolDisplayFormat) |
Konvertieren Sie ein Symbol in ein Array von Zeichenfolgenteilen, die jeweils eine Art aufweisen. Nützlich zum Kolorieren der Anzeigezeichenfolge. (Geerbt von ISymbol) |
ToDisplayString(NullableFlowState, SymbolDisplayFormat) |
Konvertiert einen |
ToDisplayString(SymbolDisplayFormat) |
Konvertiert das Symbol in eine Zeichenfolgendarstellung. (Geerbt von ISymbol) |
ToMinimalDisplayParts(SemanticModel, 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 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. |
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. |
WithNullableAnnotation(NullableAnnotation) |
Gibt den gleichen Typ wie dieser Typ zurück, aber mit der angegebenen NULLable-Anmerkung. |
Erweiterungsmethoden
IsMustOverride(ISymbol) |
Stellt einen Typ dar. |
IsNotOverridable(ISymbol) |
Stellt einen Typ dar. |
IsOverridable(ISymbol) |
Stellt einen Typ dar. |
IsOverrides(ISymbol) |
Stellt einen Typ dar. |
IsShared(ISymbol) |
Bestimmt, ob das Symbol freigegeben ist. |