Partager via


IArrayTypeSymbol Interface

Définition

Représente un tableau.

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
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 effectif d’un paramètre de type. Chaque résultat s’affiche exactement une fois dans la liste. Cette liste est triée de manière topologique selon 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. Ce n’est pas tout à fait la même chose que « 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 l’objet> IEnumerable<.

(Hérité de ITypeSymbol)
BaseType

Type de base déclaré de ce type, ou null. Le type d’objet, les types d’interface et les types de pointeur 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)
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)
CustomModifiers

Modificateurs personnalisés associés au type de tableau, ou un tableau vide s’il n’y en a pas.

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

Obtient la nullabilité de niveau supérieur des éléments stockés dans le tableau.

ElementType

Obtient le type des éléments stockés dans le tableau.

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.

Cette valeur est définie 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 : le type n’est pas 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 : le type n’est pas pris en charge

(Hérité de ISymbol)
Interfaces

Obtient l’ensemble d’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)
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)
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 langue « 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 de référence. Ce n’est jamais le cas et IsReferenceTypeIsValueType les deux retournent true. Toutefois, pour un paramètre de type non contraint, IsReferenceType et IsValueType retourne tous deux false.

(Hérité de ITypeSymbol)
IsRefLikeType

True si le type est ref-like, 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)
IsSealed

Obtient une valeur indiquant si le symbole est scellé.

(Hérité de ISymbol)
IsStatic

Obtient une valeur indiquant si le symbole est statique.

(Hérité de ISymbol)
IsSZArray

S’agit-il d’un tableau unidimensionnel de base zéro, c’est-à-dire SZArray en termes CLR. SZArray est un type de tableau encodé en métadonnées avec ELEMENT_TYPE_SZARRAY (toujours un tableau dim avec une limite inférieure de 0). Le type non-SZArray est encodé dans les métadonnées avec ELEMENT_TYPE_ARRAY et avec des tailles facultatives et des limites inférieures. Bien que non-SZArray puisse également être un tableau mono-dim avec une limite inférieure de 0, l’encodage de ces types dans les métadonnées est distinct.

IsTupleType

Il s’agit 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)
IsUnmanagedType

True si le type n’est pas managé conformément aux règles de langue. False si géré ou si la langue 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. Ce n’est jamais le cas et IsReferenceTypeIsValueType les deux retournent true. Toutefois, pour un paramètre de type non contraint, IsReferenceType et IsValueType retourne tous 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, que ce soit dans la source ou les métadonnées. Certains symboles (par exemple, des classes partielles) peuvent être définis à plusieurs emplacements.

(Hérité de ISymbol)
LowerBounds

Limites inférieures spécifiées pour les dimensions, par position. La longueur peut être inférieure Rankà , ce qui signifie que certaines dimensions de fin n’ont pas la limite inférieure spécifiée. La casse la plus courante est que toutes les dimensions sont limitées à zéro - un tableau par défaut (Nothing dans VB) est retourné dans ce cas.

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 contenants).
  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)
Name

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

(Hérité de ISymbol)
NullableAnnotation

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

(Hérité de ITypeSymbol)
OriginalDefinition

Définition d’origine de ce symbole. Si ce symbole est construit à partir d’un autre symbole par substitution de type, obtient OriginalDefinition le symbole d’origine tel qu’il a été défini dans la source ou les métadonnées.

(Hérité de ITypeSymbol)
Rank

Obtient le nombre de dimensions de ce tableau. Un tableau unidimensionnel standard a le rang 1, un tableau à deux dimensions a le rang 2, etc.

Sizes

Tailles spécifiées pour les dimensions, par position. La longueur peut être inférieure Rankà , ce qui signifie que certaines dimensions de fin n’ont pas la taille spécifiée. Le cas le plus courant est qu’aucune des dimensions n’a la taille spécifiée : un tableau vide est retourné.

SpecialType

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

(Hérité de ITypeSymbol)
TypeKind

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

(Hérité de ITypeSymbol)

Méthodes

Accept(SymbolVisitor)

Représente un tableau.

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

Représente un tableau.

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

Représente un tableau.

(Hérité de ISymbol)
Equals(IArrayTypeSymbol)

Représente un tableau.

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)

Renvoie 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û soit au fait que ce type n’implémente pas le conteneur d’interfaceMember, soit parce que ce type ne fournit pas de membre qui implémente interfaceMember avec succès).

(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)
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 d’elles 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 d’elles ayant un type. Utile pour coloriser la chaîne d’affichage.

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

Convertit un et un ITypeSymbol é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 d’elles 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 d’elles 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 tableau.

IsNotOverridable(ISymbol)

Représente un tableau.

IsOverridable(ISymbol)

Représente un tableau.

IsOverrides(ISymbol)

Représente un tableau.

IsShared(ISymbol)

Détermine si le symbole est Partagé.

S’applique à