INamedTypeSymbol Interface

Définition

Représente un type autre qu’un tableau, un pointeur, un paramètre de type.

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
Dérivé
Implémente

Remarques

Cette interface est réservée à l’implémentation par ses API associées. Nous nous réservons le droit de le modifier à l’avenir.

Propriétés

AllInterfaces

Liste de toutes les interfaces dont ce type est un sous-type déclaré, à l’exclusion de ce type lui-même. Cela inclut toutes les interfaces de base déclarées, toutes les interfaces de base déclarées de types de base et toutes les interfaces de base déclarées de ces résultats (de manière récursive). Il s’agit également du jeu d’interface efficace d’un paramètre de type. Chaque résultat apparaît exactement une fois dans la liste. Cette liste est triée de manière topologique par la relation d’héritage : si le type d’interface A étend le type d’interface B, A précède B dans la liste. Cela n’est pas tout à fait identique à « toutes les interfaces dont ce type est un sous-type approprié », car il ne prend pas en compte la variance : AllInterfaces pour la chaîne> IEnumerable<n’inclut pas d’objet> IEnumerable<.

(Hérité de ITypeSymbol)
Arity

Retourne l’arité de ce type ou le nombre de paramètres de type qu’il prend. Un type non générique n’a aucune arité.

AssociatedSymbol

Pour les types délégués déclarés implicitement retourne l’EventSymbol qui a provoqué la génération de ce type de délégué. Pour tous les autres types, retourne null. Notez que l’ensemble de symboles associés possibles peut être développé à l’avenir pour refléter les modifications apportées aux langues.

BaseType

Type de base déclaré de ce type, ou null. Le type d’objet, les types d’interface et les types pointeurs n’ont pas de type de base. Le type de base d’un paramètre de type est sa classe de base effective.

(Hérité de ITypeSymbol)
CanBeReferencedByName

Retourne true si ce symbole peut être référencé par son nom dans le code.

(Hérité de ISymbol)
ConstructedFrom

Retourne le symbole de type à partir duquel ce type a été construit. Ce symbole de type a le même type contenant (le cas échéant), mais a des arguments de type qui sont les mêmes que les paramètres de type (même si son type contenant peut ne pas).

Constructors

Obtenez les constructeurs instance et statiques pour ce type.

ContainingAssembly

Obtient le IAssemblySymbol pour l’assembly contenant. Retourne null si le symbole est partagé entre plusieurs assemblys.

(Hérité de ISymbol)
ContainingModule

Obtient le IModuleSymbol pour le module contenant. Retourne null si le symbole est partagé entre plusieurs modules.

(Hérité de ISymbol)
ContainingNamespace

Obtient le INamespaceSymbol pour l’espace de noms englobant le plus proche. Retourne null si le symbole n’est pas contenu dans un espace de noms.

(Hérité de ISymbol)
ContainingSymbol

Obtient le ISymbol pour le symbole contenant immédiatement.

(Hérité de ISymbol)
ContainingType

Obtient le INamedTypeSymbol pour le type contenant. Retourne null si le symbole n’est pas contenu dans un type.

(Hérité de ISymbol)
DeclaredAccessibility

Obtient un Accessibility indiquant l’accessibilité déclarée pour le symbole. Retourne NotApplicable si aucune accessibilité n’est déclarée.

(Hérité de ISymbol)
DeclaringSyntaxReferences

Obtenez le ou les nœuds de syntaxe dans lesquels ce symbole a été déclaré dans la source. Certains symboles (par exemple, des classes partielles) peuvent être définis à plusieurs emplacements. Cette propriété doit retourner un ou plusieurs nœuds de syntaxe uniquement si le symbole a été déclaré dans le code source et n’a pas été déclaré implicitement (voir la propriété IsImplicitlyDeclared).

Notez que pour le symbole d’espace de noms, la syntaxe de déclaration peut être la déclaration d’un espace de noms imbriqué. Par exemple, le nœud de syntaxe de déclaration pour N1 dans « espace de noms N1 . N2 {...} » est l’intégralité de NamespaceDeclarationSyntax pour N1. N2. Pour l’espace de noms global, la syntaxe de déclaration sera CompilationUnitSyntax.

(Hérité de ISymbol)
DelegateInvokeMethod

Pour les types de délégués, obtient la méthode invoke du délégué. Retourne la valeur Null sur tous les autres types de types. Notez qu’il est possible d’avoir un type délégué mal formé importé à partir de métadonnées qui n’a pas de méthode Invoke. Un tel type sera classé en tant que délégué, mais son DelegateInvokeMethod serait null.

EnumUnderlyingType

Pour les types d’énumération, obtient le type sous-jacent. Retourne la valeur Null sur tous les autres types de types.

HasUnsupportedMetadata

Indique que ce symbole utilise des métadonnées qui ne peuvent pas être prises en charge par la langue.

Voici quelques exemples :

  • Types de pointeurs dans VB
  • Type de retour ByRef
  • Modificateurs personnalisés requis

Cela se distingue, par exemple, des références aux symboles de métadonnées définis dans les assemblys qui n’ont pas été référencés. Les symboles dans lesquels cela retourne true ne peuvent jamais être utilisés correctement et ne doivent donc jamais apparaître dans une fonctionnalité IDE.

Ceci est défini pour les symboles de métadonnées, comme suit :

  • Type : si un type n’est pas pris en charge (par exemple, un type pointeur)
  • Méthode : le paramètre ou le type de retour n’est pas pris en charge
  • Champ : type non pris en charge
  • Événement : le type n’est pas pris en charge
  • Propriété : le type n’est pas pris en charge
  • Paramètre - type non pris en charge
(Hérité de ISymbol)
InstanceConstructors

Obtenez les constructeurs instance pour ce type.

Interfaces

Obtient l’ensemble des interfaces que ce type implémente directement. Cet ensemble n’inclut pas les interfaces qui sont des interfaces de base d’interfaces implémentées directement. Cela inclut les interfaces déclarées en tant que contraintes sur les paramètres de type.

(Hérité de ITypeSymbol)
IsAbstract

Obtient une valeur indiquant si le symbole est abstrait.

(Hérité de ISymbol)
IsAnonymousType

S’agit-il d’un symbole pour un type anonyme (y compris un délégué VB anonyme).

(Hérité de ITypeSymbol)
IsComImport

Spécifie que la classe ou l'interface est importée à partir d'un autre module. Voir Import et ComImportAttribute

IsDefinition

Obtient une valeur indiquant si le symbole est la définition d’origine. Retourne false si le symbole est dérivé d’un autre symbole, par substitution de type pour instance.

(Hérité de ISymbol)
IsExtern

Obtient une valeur indiquant si le symbole est défini en externe.

(Hérité de ISymbol)
IsFileLocal

Indique que le type est déclaré dans la source et n’est visible que dans le fichier dans lequel il est déclaré.

IsGenericType

True si ce type ou un type contenant a des paramètres de type.

IsImplicitClass

Retourne true si le type est la classe implicite qui contient des membres globaux non valides (comme des méthodes ou des instructions dans un fichier non script).

IsImplicitlyDeclared

Retourne true si ce symbole a été créé automatiquement par le compilateur et n’a pas de déclaration de code source correspondante explicite.

(Hérité de ISymbol)
IsNamespace

Retourne true si ce symbole est un espace de noms. S’il ne s’agit pas d’un espace de noms, il doit s’agir d’un type.

(Hérité de INamespaceOrTypeSymbol)
IsNativeIntegerType

True si le type représente un entier natif. En C#, les types représentés par les mots clés de langage « nint » et « nuint ».

(Hérité de ITypeSymbol)
IsOverride

Obtient une valeur indiquant si le symbole est un remplacement d’un symbole de classe de base.

(Hérité de ISymbol)
IsReadOnly

True si le type est en lecture seule.

(Hérité de ITypeSymbol)
IsRecord

Pour les symboles sources, true si le type est un enregistrement. Pour les symboles de métadonnées, true si le type est un enregistrement et un type référence.

(Hérité de ITypeSymbol)
IsReferenceType

True si ce type est connu pour être un type référence. Il n’est jamais le cas que IsReferenceType et IsValueType les deux retournent true. Toutefois, pour un paramètre de type sans contrainte, IsReferenceType et IsValueType retournent tous les deux false.

(Hérité de ITypeSymbol)
IsRefLikeType

True si le type est ref, ce qui signifie qu’il suit des règles similaires aux variables clR by-ref. False si le type n’est pas ref-like ou si la langue n’a pas de concept de types ref-like.

(Hérité de ITypeSymbol)
IsScriptClass

Retourne true si le type est une classe Script. Il peut s’agir d’une classe de soumission interactive ou d’une classe Script dans un fichier csx.

IsSealed

Obtient une valeur indiquant si le symbole est scellé.

(Hérité de ISymbol)
IsSerializable

True si le type est sérialisable (a l’indicateur de métadonnées Serializable).

IsStatic

Obtient une valeur indiquant si le symbole est statique.

(Hérité de ISymbol)
IsTupleType

S’agit-il d’un symbole pour un tuple .

(Hérité de ITypeSymbol)
IsType

Retourne true si ce symbole est un type. S’il ne s’agit pas d’un type, il doit s’agir d’un espace de noms.

(Hérité de INamespaceOrTypeSymbol)
IsUnboundGenericType

True s’il s’agit d’une référence à un type générique non lié . Un type générique est considéré comme non lié si toutes les listes d’arguments de type dans son nom complet sont vides. Notez que les arguments de type d’un type générique non lié seront retournés en tant que types d’erreur, car ils n’ont pas vraiment d’arguments de type. Un type générique non lié génère null pour son BaseType et un résultat vide pour ses interfaces.

IsUnmanagedType

True si le type n’est pas géré conformément aux règles de langue. False si géré ou si le langage n’a pas de concept de types non managés.

(Hérité de ITypeSymbol)
IsValueType

True si ce type est connu pour être un type valeur. Il n’est jamais le cas que IsReferenceType et IsValueType les deux retournent true. Toutefois, pour un paramètre de type sans contrainte, IsReferenceType et IsValueType retournent tous les deux false.

(Hérité de ITypeSymbol)
IsVirtual

Obtient une valeur indiquant si le symbole est virtuel.

(Hérité de ISymbol)
Kind

Obtient le SymbolKind indiquant de quel type de symbole il s’agit.

(Hérité de ISymbol)
Language

Obtient le langage source (« C# » ou « Visual Basic »).

(Hérité de ISymbol)
Locations

Obtient les emplacements où le symbole a été défini à l’origine, dans la source ou les métadonnées. Certains symboles (par exemple, les classes partielles) peuvent être définis dans plusieurs emplacements.

(Hérité de ISymbol)
MemberNames

Retourne la collection de noms de membres déclarés dans ce type.

MetadataName

Obtient le nom d’un symbole tel qu’il apparaît dans les métadonnées. La plupart du temps, il s’agit de la propriété Name, avec les exceptions suivantes :

  1. Le nom de métadonnées des types génériques inclut le suffixe « 1 », « 2 », etc. qui indique le nombre de paramètres de type (il n’inclut pas, toutefois, les noms des types ou espaces de noms contenant).
  2. Les espaces sont supprimés pour le nom de métadonnées des noms d’interface explicites, par rapport à la propriété name.
  3. La longueur des noms est limitée à ne pas dépasser les restrictions de métadonnées.
(Hérité de ISymbol)
MetadataToken

Obtient le jeton de métadonnées associé à ce symbole, ou 0 si le symbole n’est pas chargé à partir de métadonnées.

(Hérité de ISymbol)
MightContainExtensionMethods

Détermine si le symbole peut contenir des méthodes d’extension. Si la valeur est false, le symbole ne contient pas de méthodes d’extension.

Name

Obtient le nom du symbole. Retourne la chaîne vide si elle n’est pas nommée.

(Hérité de ISymbol)
NativeIntegerUnderlyingType

S’il s’agit d’un entier natif, retourne le symbole du type sous-jacent, soit IntPtr ou UIntPtr. Sinon, retourne null.

NullableAnnotation

Annotation nullable associée au type, ou None s’il n’y en a pas.

(Hérité de ITypeSymbol)
OriginalDefinition

Obtenez la définition d’origine de ce symbole de type. Si ce symbole est dérivé d’un autre symbole par substitution de type (par exemple), il obtient le symbole d’origine, tel qu’il a été défini dans la source ou les métadonnées.

SpecialType

Valeur énumérée qui identifie certains types « spéciaux », comme Object. Retourne None si le type n’est pas spécial.

(Hérité de ITypeSymbol)
StaticConstructors

Obtenez les constructeurs statiques pour ce type.

TupleElements

Retourne des champs qui représentent des éléments tuple pour les types qui sont des tuples.

Si ce type n’est pas un tuple, retourne la valeur par défaut.

TupleUnderlyingType

S’il s’agit d’un type tuple avec des noms d’éléments, retourne le symbole du type tuple sans nom. Sinon, retourne null. Argument de type correspondant au type du champ d’extension (VT[8]. Rest), qui est à la 8e position (une base) est toujours un symbole pour un autre tuple, plutôt que son type sous-jacent.

TypeArgumentNullableAnnotations

Retourne la nullabilité de niveau supérieur des arguments de type qui ont été remplacés pour les paramètres de type. Si rien n’a été remplacé pour un paramètre de type donné, est None retourné pour cet argument de type.

TypeArguments

Retourne les arguments de type qui ont été remplacés pour les paramètres de type. Si rien n’a été remplacé pour un paramètre de type donné, le paramètre de type lui-même est considéré comme l’argument de type.

TypeArgumentsNullableAnnotations

Retourne la nullabilité de niveau supérieur des arguments de type qui ont été remplacés pour les paramètres de type. Si rien n’a été remplacé pour un paramètre de type donné, est NotApplicable retourné pour cet argument de type.

TypeKind

Valeur énumérée qui identifie si ce type est un tableau, un pointeur, une énumération, etc.

(Hérité de ITypeSymbol)
TypeParameters

Retourne les paramètres de type dont ce type dispose. S’il s’agit d’un type non générique, retourne un ImmutableArray vide.

Méthodes

Accept(SymbolVisitor)

Représente un type autre qu’un tableau, un pointeur, un paramètre de type.

(Hérité de ISymbol)
Accept<TArgument,TResult>(SymbolVisitor<TArgument,TResult>, TArgument)

Représente un type autre qu’un tableau, un pointeur, un paramètre de type.

(Hérité de ISymbol)
Accept<TResult>(SymbolVisitor<TResult>)

Représente un type autre qu’un tableau, un pointeur, un paramètre de type.

(Hérité de ISymbol)
Construct(ImmutableArray<ITypeSymbol>, ImmutableArray<NullableAnnotation>)

Retourne un type construit en fonction de ses arguments de type et des annotations nullables de l’argument de type.

Construct(ITypeSymbol[])

Retourne un type construit en fonction de ses arguments de type.

ConstructUnboundGenericType()

Retourne un type générique non lié de ce type nommé.

Equals(ISymbol, SymbolEqualityComparer)

Détermine si ce symbole est égal à un autre, selon les règles du fourni SymbolEqualityComparer

(Hérité de ISymbol)
FindImplementationForInterfaceMember(ISymbol)

Retourne le symbole correspondant dans ce type ou un type de base qui implémente interfaceMember (implicitement ou explicitement) ou null si aucun symbole de ce type n’existe (ce qui peut être dû au fait que ce type n’implémente pas le conteneur d’interfaceMember ou que ce type ne fournit pas de membre qui implémente correctement interfaceMember).

(Hérité de ITypeSymbol)
GetAttributes()

Obtient les attributs du symbole. Retourne un vide IEnumerable<T> s’il n’y a pas d’attributs.

(Hérité de ISymbol)
GetDocumentationCommentId()

Renvoie l’ID de commentaire de la documentation pour le symbole, ou null si le symbole ne prend pas en charge les commentaires de documentation.

(Hérité de ISymbol)
GetDocumentationCommentXml(CultureInfo, Boolean, CancellationToken)

Obtient le code XML (sous forme de texte) du commentaire associé au symbole.

(Hérité de ISymbol)
GetMembers()

Obtenez tous les membres de ce symbole.

(Hérité de INamespaceOrTypeSymbol)
GetMembers(String)

Obtenez tous les membres de ce symbole qui ont un nom particulier.

(Hérité de INamespaceOrTypeSymbol)
GetTypeArgumentCustomModifiers(Int32)

Retourne des modificateurs personnalisés pour l’argument de type qui a été remplacé par le paramètre type. Les modificateurs correspondent à l’argument de type au même ordinal dans le TypeArguments tableau. Retourne un tableau vide s’il n’y a pas de modificateurs.

GetTypeMembers()

Obtenez tous les membres de ce symbole qui sont des types.

(Hérité de INamespaceOrTypeSymbol)
GetTypeMembers(String)

Obtenez tous les membres de ce symbole qui sont des types qui ont un nom particulier, de n’importe quelle arité.

(Hérité de INamespaceOrTypeSymbol)
GetTypeMembers(String, Int32)

Obtenir tous les membres de ce symbole qui sont des types qui ont un nom et une arité particuliers

(Hérité de INamespaceOrTypeSymbol)
ToDisplayParts(NullableFlowState, SymbolDisplayFormat)

Convertit un symbole en tableau de parties de chaîne, chacune ayant un type. Utile pour coloriser la chaîne d’affichage.

(Hérité de ITypeSymbol)
ToDisplayParts(SymbolDisplayFormat)

Convertissez un symbole en tableau de parties de chaîne, chacune ayant un type. Utile pour coloriser la chaîne d’affichage.

(Hérité de ISymbol)
ToDisplayString(NullableFlowState, SymbolDisplayFormat)

Convertit un ITypeSymbol et un état de flux nullable en représentation sous forme de chaîne.

(Hérité de ITypeSymbol)
ToDisplayString(SymbolDisplayFormat)

Convertit le symbole en représentation sous forme de chaîne.

(Hérité de ISymbol)
ToMinimalDisplayParts(SemanticModel, Int32, SymbolDisplayFormat)

Convertissez un symbole en tableau de parties de chaîne, chacune ayant un type. Peut être adapté à un emplacement spécifique dans le code source. Utile pour coloriser la chaîne d’affichage.

(Hérité de ISymbol)
ToMinimalDisplayParts(SemanticModel, NullableFlowState, Int32, SymbolDisplayFormat)

Convertissez un symbole en tableau de parties de chaîne, chacune ayant un type. Peut être adapté à un emplacement spécifique dans le code source. Utile pour coloriser la chaîne d’affichage.

(Hérité de ITypeSymbol)
ToMinimalDisplayString(SemanticModel, Int32, SymbolDisplayFormat)

Convertissez un symbole en chaîne qui peut être affichée à l’utilisateur. Peut être adapté à un emplacement spécifique dans le code source.

(Hérité de ISymbol)
ToMinimalDisplayString(SemanticModel, NullableFlowState, Int32, SymbolDisplayFormat)

Convertit un symbole en chaîne qui peut être affichée à l’utilisateur. Peut être adapté à un emplacement spécifique dans le code source.

(Hérité de ITypeSymbol)
WithNullableAnnotation(NullableAnnotation)

Retourne le même type que ce type, mais avec l’annotation nullable donnée.

(Hérité de ITypeSymbol)

Méthodes d’extension

IsMustOverride(ISymbol)

Représente un type autre qu’un tableau, un pointeur, un paramètre de type.

IsNotOverridable(ISymbol)

Représente un type autre qu’un tableau, un pointeur, un paramètre de type.

IsOverridable(ISymbol)

Représente un type autre qu’un tableau, un pointeur, un paramètre de type.

IsOverrides(ISymbol)

Représente un type autre qu’un tableau, un pointeur, un paramètre de type.

IsShared(ISymbol)

Détermine si le symbole est Partagé.

S’applique à