ISymbol Interface
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Représente un symbole (espace de noms, classe, méthode, paramètre, etc.) exposé par le compilateur.
public interface class ISymbol : IEquatable<Microsoft::CodeAnalysis::ISymbol ^>
public interface ISymbol : IEquatable<Microsoft.CodeAnalysis.ISymbol>
type ISymbol = interface
interface IEquatable<ISymbol>
Public Interface ISymbol
Implements IEquatable(Of ISymbol)
- 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 changer à l’avenir.
Propriétés
CanBeReferencedByName |
Retourne true si ce symbole peut être référencé par son nom dans le code. |
ContainingAssembly |
Obtient l’assembly IAssemblySymbol conteneur. Retourne null si le symbole est partagé entre plusieurs assemblys. |
ContainingModule |
Obtient le IModuleSymbol module conteneur. Retourne null si le symbole est partagé entre plusieurs modules. |
ContainingNamespace |
Obtient l’espace de noms englobant le INamespaceSymbol plus proche. Retourne null si le symbole n’est pas contenu dans un espace de noms. |
ContainingSymbol |
Obtient le ISymbol symbole qui contient immédiatement. |
ContainingType |
Obtient le INamedTypeSymbol type conteneur. Retourne null si le symbole n’est pas contenu dans un type. |
DeclaredAccessibility |
Obtient une Accessibility indication de l’accessibilité déclarée pour le symbole. Retourne NotApplicable si aucune accessibilité n’est déclarée. |
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 dans 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é IsImplicitlyDe declare). Notez que pour le symbole d’espace de noms, la syntaxe déclarante peut déclarer un espace de noms imbriqué. Par exemple, le nœud de syntaxe déclarant 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. |
HasUnsupportedMetadata |
Indique que ce symbole utilise des métadonnées qui ne peuvent pas être prises en charge par la langue. Voici quelques exemples :
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 cette valeur retourne true ne peuvent jamais être utilisées 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 :
|
IsAbstract |
Obtient une valeur indiquant si le symbole est abstrait. |
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 par instance. |
IsExtern |
Obtient une valeur indiquant si le symbole est défini en externe. |
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. |
IsOverride |
Obtient une valeur indiquant si le symbole est un remplacement d’un symbole de classe de base. |
IsSealed |
Obtient une valeur indiquant si le symbole est scellé. |
IsStatic |
Obtient une valeur indiquant si le symbole est statique. |
IsVirtual |
Obtient une valeur indiquant si le symbole est virtuel. |
Kind |
Obtient l’indication SymbolKind du type de symbole qu’il est. |
Language |
Obtient le langage source (« C# » ou « Visual Basic »). |
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, des classes partielles) peuvent être définis dans plusieurs emplacements. |
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 même propriété Name, avec les exceptions suivantes :
|
MetadataToken |
Obtient le jeton de métadonnées associé à ce symbole, ou 0 si le symbole n’est pas chargé à partir des métadonnées. |
Name |
Obtient le nom du symbole. Retourne la chaîne vide si elle n’est pas nommée. |
OriginalDefinition |
Obtient la ISymbol définition d’origine du symbole. 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. |
Méthodes
Accept(SymbolVisitor) |
Représente un symbole (espace de noms, classe, méthode, paramètre, etc.) exposé par le compilateur. |
Accept<TArgument,TResult>(SymbolVisitor<TArgument,TResult>, TArgument) |
Représente un symbole (espace de noms, classe, méthode, paramètre, etc.) exposé par le compilateur. |
Accept<TResult>(SymbolVisitor<TResult>) |
Représente un symbole (espace de noms, classe, méthode, paramètre, etc.) exposé par le compilateur. |
Equals(ISymbol, SymbolEqualityComparer) |
Détermine si ce symbole est égal à un autre, conformément aux règles du symbole fourni SymbolEqualityComparer |
GetAttributes() |
Obtient les attributs du symbole. Retourne une valeur vide IEnumerable<T> s’il n’y a pas d’attributs. |
GetDocumentationCommentId() |
Retourne l’ID de commentaire de documentation du symbole ou null si le symbole ne prend pas en charge les commentaires de documentation. |
GetDocumentationCommentXml(CultureInfo, Boolean, CancellationToken) |
Obtient le code XML (en tant que texte) du commentaire associé au symbole. |
ToDisplayParts(SymbolDisplayFormat) |
Convertissez un symbole en tableau de parties de chaîne, chacun ayant un type. Utile pour coloriser la chaîne d’affichage. |
ToDisplayString(SymbolDisplayFormat) |
Convertit le symbole en représentation sous forme de chaîne. |
ToMinimalDisplayParts(SemanticModel, Int32, SymbolDisplayFormat) |
Convertissez un symbole en tableau de parties de chaîne, chacun ayant un type. Peut être adapté à un emplacement spécifique dans le code source. Utile pour coloriser la chaîne d’affichage. |
ToMinimalDisplayString(SemanticModel, Int32, SymbolDisplayFormat) |
Convertissez un symbole en chaîne qui peut être affichée pour l’utilisateur. Peut être adapté à un emplacement spécifique dans le code source. |
Méthodes d’extension
IsMustOverride(ISymbol) |
Représente un symbole (espace de noms, classe, méthode, paramètre, etc.) exposé par le compilateur. |
IsNotOverridable(ISymbol) |
Représente un symbole (espace de noms, classe, méthode, paramètre, etc.) exposé par le compilateur. |
IsOverridable(ISymbol) |
Représente un symbole (espace de noms, classe, méthode, paramètre, etc.) exposé par le compilateur. |
IsOverrides(ISymbol) |
Représente un symbole (espace de noms, classe, méthode, paramètre, etc.) exposé par le compilateur. |
IsShared(ISymbol) |
Détermine si le symbole est partagé. |