ISymbol Interfaccia
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Rappresenta un simbolo (spazio dei nomi, classe, metodo, parametro e così via) esposto dal compilatore.
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)
- Derivato
- Implementazioni
Commenti
Questa interfaccia è riservata all'implementazione dalle API associate. Ci riservamo il diritto di modificarlo in futuro.
Proprietà
| Nome | Descrizione |
|---|---|
| CanBeReferencedByName |
Restituisce true se questo simbolo può essere fatto riferimento dal nome nel codice. |
| ContainingAssembly |
Ottiene l'oggetto IAssemblySymbol per l'assembly contenitore. Restituisce Null se il simbolo è condiviso tra più assembly. |
| ContainingModule |
Ottiene l'oggetto IModuleSymbol per il modulo contenitore. Restituisce Null se il simbolo viene condiviso tra più moduli. |
| ContainingNamespace |
Ottiene l'oggetto INamespaceSymbol per lo spazio dei nomi di inclusione più vicino. Restituisce Null se il simbolo non è contenuto in uno spazio dei nomi. |
| ContainingSymbol |
Ottiene l'oggetto per l'oggetto ISymbol contenente immediatamente il simbolo. |
| ContainingType |
Ottiene l'oggetto INamedTypeSymbol per il tipo contenitore. Restituisce Null se il simbolo non è contenuto all'interno di un tipo. |
| DeclaredAccessibility |
Ottiene un Accessibility oggetto che indica l'accessibilità dichiarata per il simbolo. Restituisce NotApplicable se non viene dichiarata alcuna accessibilità. |
| DeclaringSyntaxReferences |
Ottenere i nodi della sintassi in cui questo simbolo è stato dichiarato nell'origine. Alcuni simboli, ad esempio tipi parziali, ad esempio classi, struct e interfacce, possono essere definiti in più posizioni. Questa proprietà deve restituire uno o più nodi della sintassi solo se il simbolo è stato dichiarato nel codice sorgente e non è stato dichiarato in modo implicito (vedere la proprietà IsImplicitlyDeclared).
Si noti che per i membri parziali (metodi, proprietà, eventi), questa proprietà restituisce un solo nodo della sintassi. Per ottenere tutti i nodi della sintassi per un membro parziale, usare le Si noti che per il simbolo dello spazio dei nomi, la sintassi dichiarante potrebbe dichiarare uno spazio dei nomi annidato. Ad esempio, il nodo della sintassi dichiarante per N1 in "spazio dei nomi N1. N2 {...}" è l'intero namespaceDeclarationSyntax per N1. N2. Per lo spazio dei nomi globale, la sintassi dichiarativa sarà CompilationUnitSyntax. |
| HasUnsupportedMetadata |
Indica che questo simbolo utilizza metadati che non possono essere supportati dalla lingua. Gli esempi includono:
Ciò si distingue, ad esempio, dai riferimenti ai simboli di metadati definiti negli assembly a cui non viene fatto riferimento. I simboli in cui restituisce true non possono mai essere usati correttamente e pertanto non dovrebbero mai essere visualizzati in alcuna funzionalità dell'IDE. Questa opzione è impostata per i simboli di metadati, come indicato di seguito:
|
| IsAbstract |
Ottiene un valore che indica se il simbolo è astratto. |
| IsDefinition |
Ottiene un valore che indica se il simbolo è la definizione originale. Restituisce false se il simbolo è derivato da un altro simbolo, in base alla sostituzione del tipo per istanza di . |
| IsExtern |
Ottiene un valore che indica se il simbolo è definito esternamente. |
| IsImplicitlyDeclared |
Restituisce true se questo simbolo è stato creato automaticamente dal compilatore e non dispone di una dichiarazione di codice sorgente corrispondente esplicita. |
| IsOverride |
Ottiene un valore che indica se il simbolo è un override di un simbolo di classe di base. |
| IsSealed |
Ottiene un valore che indica se il simbolo è sealed. |
| IsStatic |
Ottiene un valore che indica se il simbolo è statico. |
| IsVirtual |
Ottiene un valore che indica se il simbolo è virtuale. |
| Kind |
Ottiene l'oggetto che indica il SymbolKind tipo di simbolo. |
| Language |
Ottiene il linguaggio di origine ("C#" o "Visual Basic"). |
| Locations |
Ottiene i percorsi in cui il simbolo è stato originariamente definito, nell'origine o nei metadati. Alcuni simboli, ad esempio tipi parziali, ad esempio classi, struct e interfacce, possono essere definiti in più posizioni. Si noti che per i membri parziali (ad esempio metodi, proprietà ed eventi), questa proprietà restituisce una sola posizione. Per ottenere tutte le posizioni per un membro parziale, usare le |
| MetadataName |
Ottiene il nome di un simbolo visualizzato nei metadati. Nella maggior parte dei casi, si tratta della stessa proprietà Name, con le eccezioni seguenti:
|
| MetadataToken |
Ottiene il token di metadati associato a questo simbolo oppure 0 se il simbolo non viene caricato dai metadati. |
| Name |
Ottiene il nome del simbolo. Restituisce la stringa vuota se senza nome. |
| OriginalDefinition |
Ottiene l'oggetto ISymbol per la definizione originale del simbolo. Se questo simbolo è derivato da un altro simbolo, per sostituzione del tipo, ad esempio, ottiene il simbolo originale, come è stato definito nell'origine o nei metadati. |
Metodi
| Nome | Descrizione |
|---|---|
| Accept(SymbolVisitor) |
Rappresenta un simbolo (spazio dei nomi, classe, metodo, parametro e così via) esposto dal compilatore. |
| Accept<TArgument,TResult>(SymbolVisitor<TArgument,TResult>, TArgument) |
Rappresenta un simbolo (spazio dei nomi, classe, metodo, parametro e così via) esposto dal compilatore. |
| Accept<TResult>(SymbolVisitor<TResult>) |
Rappresenta un simbolo (spazio dei nomi, classe, metodo, parametro e così via) esposto dal compilatore. |
| Equals(ISymbol, SymbolEqualityComparer) |
Determina se questo simbolo è uguale a un altro, in base alle regole dell'oggetto specificato SymbolEqualityComparer |
| GetAttributes() |
Ottiene gli attributi per il simbolo. Restituisce un valore vuoto ImmutableArray<T> se non sono presenti attributi. |
| GetDocumentationCommentId() |
Restituisce l'ID commento della documentazione per il simbolo oppure null se il simbolo non supporta i commenti della documentazione. |
| GetDocumentationCommentXml(CultureInfo, Boolean, CancellationToken) |
Ottiene il codice XML (come testo) per il commento associato al simbolo. |
| ToDisplayParts(SymbolDisplayFormat) |
Convertire un simbolo in una matrice di parti stringa, ognuna delle quali ha un tipo. Utile per colorare la stringa di visualizzazione. |
| ToDisplayString(SymbolDisplayFormat) |
Converte il simbolo in una rappresentazione di stringa. |
| ToMinimalDisplayParts(SemanticModel, Int32, SymbolDisplayFormat) |
Convertire un simbolo in una matrice di parti stringa, ognuna delle quali ha un tipo. Può essere personalizzato in base a una posizione specifica nel codice sorgente. Utile per colorare la stringa di visualizzazione. |
| ToMinimalDisplayString(SemanticModel, Int32, SymbolDisplayFormat) |
Convertire un simbolo in una stringa che può essere visualizzata all'utente. Può essere personalizzato in base a una posizione specifica nel codice sorgente. |
Metodi di estensione
| Nome | Descrizione |
|---|---|
| IsMustOverride(ISymbol) |
Rappresenta un simbolo (spazio dei nomi, classe, metodo, parametro e così via) esposto dal compilatore. |
| IsNotOverridable(ISymbol) |
Rappresenta un simbolo (spazio dei nomi, classe, metodo, parametro e così via) esposto dal compilatore. |
| IsOverridable(ISymbol) |
Rappresenta un simbolo (spazio dei nomi, classe, metodo, parametro e così via) esposto dal compilatore. |
| IsOverrides(ISymbol) |
Rappresenta un simbolo (spazio dei nomi, classe, metodo, parametro e così via) esposto dal compilatore. |
| IsShared(ISymbol) |
Determina se il simbolo è Condiviso. |