Compartir a través de


INamedTypeSymbol Interfaz

Definición

Representa un tipo distinto de una matriz, un puntero, un parámetro de tipo.

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
Derivado
Implementaciones

Comentarios

Esta interfaz está reservada para su implementación por sus API asociadas. Nos reservamos el derecho de cambiarlo en el futuro.

Propiedades

AllInterfaces

La lista de todas las interfaces de las que este tipo es un subtipo declarado, excepto este tipo en sí. Esto incluye todas las interfaces base declaradas, todas las interfaces base declaradas de tipos base y todas las interfaces base declaradas de esos resultados (recursivamente). Esto también es el conjunto de interfaz eficaz de un parámetro de tipo. Cada resultado aparece exactamente una vez en la lista. Esta lista se ordena de forma topológica por la relación de herencia: si el tipo de interfaz A extiende el tipo de interfaz B, A precede a B en la lista. Esto no es lo mismo que "todas las interfaces de las que este tipo es un subtipo adecuado" porque no tiene en cuenta la varianza: AllInterfaces para la cadena IEnumerable<no incluirá el objeto> IEnumerable<.>

(Heredado de ITypeSymbol)
Arity

Devuelve la aridad de este tipo o el número de parámetros de tipo que toma. Un tipo no genérico tiene aridad cero.

AssociatedSymbol

En el caso de los tipos delegados declarados implícitamente, devuelve eventSymbol que provocó que se generara este tipo delegado. Para todos los demás tipos, devuelve null. Tenga en cuenta que el conjunto de posibles símbolos asociados podría expandirse en el futuro para reflejar los cambios en los idiomas.

BaseType

Tipo base declarado de este tipo o null. El tipo de objeto, los tipos de interfaz y los tipos de puntero no tienen un tipo base. El tipo base de un parámetro de tipo es su clase base efectiva.

(Heredado de ITypeSymbol)
CanBeReferencedByName

Devuelve true si se puede hacer referencia a este símbolo por su nombre en el código.

(Heredado de ISymbol)
ConstructedFrom

Devuelve el símbolo de tipo desde el que se construyó este tipo. Este símbolo de tipo tiene el mismo tipo contenedor (si existe), pero tiene argumentos de tipo que son los mismos que los parámetros de tipo (aunque es posible que su tipo contenedor no).

Constructors

Obtenga los constructores estáticos y de instancia para este tipo.

ContainingAssembly

Obtiene para IAssemblySymbol el ensamblado contenedor. Devuelve null si el símbolo se comparte entre varios ensamblados.

(Heredado de ISymbol)
ContainingModule

Obtiene para IModuleSymbol el módulo contenedor. Devuelve null si el símbolo se comparte entre varios módulos.

(Heredado de ISymbol)
ContainingNamespace

Obtiene para INamespaceSymbol el espacio de nombres envolvente más cercano. Devuelve null si el símbolo no está contenido en un espacio de nombres.

(Heredado de ISymbol)
ContainingSymbol

Obtiene el ISymbol objeto para el símbolo que contiene inmediatamente.

(Heredado de ISymbol)
ContainingType

Obtiene para INamedTypeSymbol el tipo contenedor. Devuelve null si el símbolo no está contenido dentro de un tipo.

(Heredado de ISymbol)
DeclaredAccessibility

Obtiene un Accessibility valor de tipo que indica la accesibilidad declarada para el símbolo. Devuelve NotApplicable si no se declara ninguna accesibilidad.

(Heredado de ISymbol)
DeclaringSyntaxReferences

Obtenga los nodos de sintaxis donde se declaró este símbolo en el origen. Algunos símbolos (por ejemplo, clases parciales) se pueden definir en más de una ubicación. Esta propiedad solo debe devolver uno o más nodos de sintaxis si el símbolo se declaró en el código fuente y tampoco se declaró implícitamente (vea la propiedad IsImplicitlyDeclared).

Tenga en cuenta que para el símbolo del espacio de nombres, la sintaxis declaratoria podría declarar un espacio de nombres anidado. Por ejemplo, el nodo de sintaxis declarante para N1 en "espacio de nombres N1. N2 {...}" es el namespaceDeclarationSyntax completo para N1. N2. Para el espacio de nombres global, la sintaxis declaratoria será CompilationUnitSyntax.

(Heredado de ISymbol)
DelegateInvokeMethod

Para los tipos de delegado, obtiene el método de invocación del delegado. Devuelve null en todos los demás tipos de tipos. Tenga en cuenta que es posible tener un tipo delegado mal formado importado de metadatos que no tiene un método Invoke. Este tipo se clasificará como delegado, pero su DelegateInvokeMethod sería null.

EnumUnderlyingType

Para los tipos de enumeración, obtiene el tipo subyacente. Devuelve null en todos los demás tipos de tipos.

HasUnsupportedMetadata

Indica que este símbolo usa metadatos que no pueden ser compatibles con el idioma.

Algunos ejemplos son:

  • Tipos de puntero en VB
  • Tipo de valor devuelto ByRef
  • Modificadores personalizados necesarios

Esto se distingue de, por ejemplo, referencias a símbolos de metadatos definidos en ensamblados a los que no se hace referencia. Los símbolos en los que devuelve true nunca se pueden usar correctamente y, por tanto, nunca deben aparecer en ninguna característica del IDE.

Esto se establece para los símbolos de metadatos, como se indica a continuación:

  • Tipo: si un tipo no es compatible (por ejemplo, un tipo de puntero)
  • Método: el parámetro o el tipo de valor devuelto no son compatibles
  • Campo: el tipo no es compatible
  • Evento: el tipo no es compatible
  • Propiedad: el tipo no es compatible
  • Parámetro: el tipo no es compatible

(Heredado de ISymbol)
InstanceConstructors

Obtenga los constructores de instancia de este tipo.

Interfaces

Obtiene el conjunto de interfaces que este tipo implementa directamente. Este conjunto no incluye interfaces que son interfaces base de interfaces implementadas directamente. Esto incluye las interfaces declaradas como restricciones en los parámetros de tipo.

(Heredado de ITypeSymbol)
IsAbstract

Obtiene un valor que indica si el símbolo es abstracto.

(Heredado de ISymbol)
IsAnonymousType

Es este un símbolo para un tipo anónimo (incluido delegado vb anónimo).

(Heredado de ITypeSymbol)
IsComImport

Especifica que la clase o interfaz se importó de otro módulo. Vea Import y ComImportAttribute

IsDefinition

Obtiene un valor que indica si el símbolo es la definición original. Devuelve false si el símbolo se deriva de otro símbolo, por sustitución de tipos por ejemplo.

(Heredado de ISymbol)
IsExtern

Obtiene un valor que indica si el símbolo se define externamente.

(Heredado de ISymbol)
IsFileLocal

Indica que el tipo se declara en el origen y solo está visible en el archivo en el que se declara.

IsGenericType

True si este tipo o algún tipo contenedor tiene parámetros de tipo.

IsImplicitClass

Devuelve true si el tipo es la clase implícita que contiene miembros globales no válidos (como métodos o instrucciones en un archivo que no es de script).

IsImplicitlyDeclared

Devuelve true si el compilador creó automáticamente este símbolo y no tiene una declaración de código fuente correspondiente explícita.

(Heredado de ISymbol)
IsNamespace

Devuelve true si este símbolo es un espacio de nombres. Si no es un espacio de nombres, debe ser un tipo.

(Heredado de INamespaceOrTypeSymbol)
IsNativeIntegerType

True si el tipo representa un entero nativo. En C#, los tipos representados por palabras clave de lenguaje 'nint' y 'nuint'.

(Heredado de ITypeSymbol)
IsOverride

Obtiene un valor que indica si el símbolo es una invalidación de un símbolo de clase base.

(Heredado de ISymbol)
IsReadOnly

True si el tipo es de solo lectura.

(Heredado de ITypeSymbol)
IsRecord

En el caso de los símbolos de origen, true si el tipo es un registro. Para los símbolos de metadatos, true si el tipo es un registro y un tipo de referencia.

(Heredado de ITypeSymbol)
IsReferenceType

True si se sabe que este tipo es un tipo de referencia. Nunca es el caso de que IsReferenceType y IsValueType ambos devuelvan verdadero. Sin embargo, para un parámetro de tipo sin restricciones, IsReferenceType y IsValueType ambos devolverán false.

(Heredado de ITypeSymbol)
IsRefLikeType

True si el tipo es de tipo ref, lo que significa que sigue reglas similares a las variables CLR by-ref. False si el tipo no es de tipo ref o si el lenguaje no tiene ningún concepto de tipos de tipo ref.

(Heredado de ITypeSymbol)
IsScriptClass

Devuelve true si el tipo es una clase Script. Puede ser una clase de envío interactiva o una clase Script en un archivo csx.

IsSealed

Obtiene un valor que indica si el símbolo está sellado.

(Heredado de ISymbol)
IsSerializable

True si el tipo es serializable (tiene una marca de metadatos serializable).

IsStatic

Obtiene un valor que indica si el símbolo es estático.

(Heredado de ISymbol)
IsTupleType

Es este un símbolo para una tupla .

(Heredado de ITypeSymbol)
IsType

Devuelve true si este símbolo es un tipo. Si no es un tipo, debe ser un espacio de nombres.

(Heredado de INamespaceOrTypeSymbol)
IsUnboundGenericType

True si se trata de una referencia a un tipo genérico independiente . Un tipo genérico se considera unbound si todas las listas de argumentos de tipo en su nombre completo están vacías. Tenga en cuenta que los argumentos de tipo de un tipo genérico sin enlazar se devolverán como tipos de error porque realmente no tienen argumentos de tipo. Un tipo genérico sin enlazar produce null para su BaseType y un resultado vacío para sus interfaces.

IsUnmanagedType

True si el tipo no está administrado según las reglas de lenguaje. False si se administra o si el lenguaje no tiene ningún concepto de tipos no administrados.

(Heredado de ITypeSymbol)
IsValueType

True si se sabe que este tipo es un tipo de valor. Nunca es el caso de que IsReferenceType y IsValueType ambos devuelvan verdadero. Sin embargo, para un parámetro de tipo sin restricciones, IsReferenceType y IsValueType ambos devolverán false.

(Heredado de ITypeSymbol)
IsVirtual

Obtiene un valor que indica si el símbolo es virtual.

(Heredado de ISymbol)
Kind

Obtiene el SymbolKind que indica qué tipo de símbolo es.

(Heredado de ISymbol)
Language

Obtiene el lenguaje de origen ("C#" o "Visual Basic").

(Heredado de ISymbol)
Locations

Obtiene las ubicaciones en las que se definió originalmente el símbolo, ya sea en el origen o en los metadatos. Algunos símbolos (por ejemplo, clases parciales) se pueden definir en más de una ubicación.

(Heredado de ISymbol)
MemberNames

Devuelve la colección de nombres de miembros declarados dentro de este tipo.

MetadataName

Obtiene el nombre de un símbolo tal como aparece en los metadatos. La mayoría de las veces, es lo mismo que la propiedad Name, con las siguientes excepciones:

  1. El nombre de metadatos de tipos genéricos incluye el sufijo "'1", "'2", etc., que indica el número de parámetros de tipo (no incluye, sin embargo, nombres de tipos o espacios de nombres que contienen).
  2. El nombre de metadatos de los nombres de interfaz explícitos tiene espacios quitados, en comparación con la propiedad name.
  3. La longitud de los nombres se limita a no superar las restricciones de metadatos.
(Heredado de ISymbol)
MetadataToken

Obtiene el token de metadatos asociado a este símbolo o 0 si el símbolo no se carga desde los metadatos.

(Heredado de ISymbol)
MightContainExtensionMethods

Determina si el símbolo puede contener métodos de extensión. Si es false, el símbolo no contiene métodos de extensión.

Name

Obtiene el nombre del símbolo. Devuelve la cadena vacía si no tiene nombre.

(Heredado de ISymbol)
NativeIntegerUnderlyingType

Si se trata de un entero nativo, devuelve el símbolo del tipo subyacente, ya sea IntPtr o UIntPtr. De lo contrario, devuelve null.

NullableAnnotation

Anotación que acepta valores NULL asociada al tipo o None si no hay ninguna.

(Heredado de ITypeSymbol)
OriginalDefinition

Obtenga la definición original de este símbolo de tipo. Si este símbolo se deriva de otra sustitución de tipos por (por ejemplo), obtiene el símbolo original, tal como se definió en el origen o los metadatos.

SpecialType

Valor enumerado que identifica determinados tipos "especiales", como Object. Devuelve None si el tipo no es especial.

(Heredado de ITypeSymbol)
StaticConstructors

Obtenga los constructores estáticos de este tipo.

TupleElements

Devuelve campos que representan elementos de tupla para los tipos que son tuplas.

Si este tipo no es una tupla, devuelve el valor predeterminado.

TupleUnderlyingType

Si se trata de un tipo de tupla con nombres de elemento, devuelve el símbolo del tipo de tupla sin nombres. De lo contrario, devuelve null. Argumento de tipo correspondiente al tipo del campo de extensión (VT[8]. Rest), que se encuentra en la posición 8 (basada en uno) siempre es un símbolo para otra tupla, en lugar de su tipo subyacente.

TypeArgumentNullableAnnotations

Devuelve la nulabilidad de nivel superior de los argumentos de tipo que se han sustituido por los parámetros de tipo. Si no se ha sustituido nada por un parámetro de tipo determinado, None se devuelve para ese argumento de tipo.

TypeArguments

Devuelve los argumentos de tipo que se han sustituido por los parámetros de tipo. Si no se ha sustituido nada por un parámetro de tipo determinado, el propio parámetro de tipo se considera el argumento de tipo.

TypeArgumentsNullableAnnotations

Devuelve la nulabilidad de nivel superior de los argumentos de tipo que se han sustituido por los parámetros de tipo. Si no se ha sustituido nada por un parámetro de tipo determinado, NotApplicable se devuelve para ese argumento de tipo.

TypeKind

Valor enumerado que identifica si este tipo es una matriz, puntero, enumeración, etc.

(Heredado de ITypeSymbol)
TypeParameters

Devuelve los parámetros de tipo que tiene este tipo. Si se trata de un tipo no genérico, devuelve un immutableArray vacío.

Métodos

Accept(SymbolVisitor)

Representa un tipo distinto de una matriz, un puntero, un parámetro de tipo.

(Heredado de ISymbol)
Accept<TArgument,TResult>(SymbolVisitor<TArgument,TResult>, TArgument)

Representa un tipo distinto de una matriz, un puntero, un parámetro de tipo.

(Heredado de ISymbol)
Accept<TResult>(SymbolVisitor<TResult>)

Representa un tipo distinto de una matriz, un puntero, un parámetro de tipo.

(Heredado de ISymbol)
Construct(ImmutableArray<ITypeSymbol>, ImmutableArray<NullableAnnotation>)

Devuelve un tipo construido dados sus argumentos de tipo y anotaciones que aceptan valores NULL del argumento de tipo.

Construct(ITypeSymbol[])

Devuelve un tipo construido según sus argumentos de tipo.

ConstructUnboundGenericType()

Devuelve un tipo genérico independiente de este tipo con nombre.

Equals(ISymbol, SymbolEqualityComparer)

Determina si este símbolo es igual a otro, según las reglas del proporcionado. SymbolEqualityComparer

(Heredado de ISymbol)
FindImplementationForInterfaceMember(ISymbol)

Devuelve el símbolo correspondiente en este tipo o un tipo base que implementa interfaceMember (ya sea implícita o explícitamente) o null si no existe este símbolo (que puede ser porque este tipo no implementa el contenedor de interfaceMember o este tipo no proporciona un miembro que implemente interfaceMember correctamente).

(Heredado de ITypeSymbol)
GetAttributes()

Obtiene los atributos del símbolo. Devuelve un valor vacío IEnumerable<T> si no hay atributos.

(Heredado de ISymbol)
GetDocumentationCommentId()

Devuelve el identificador de comentario de documentación del símbolo o null si el símbolo no admite comentarios de documentación.

(Heredado de ISymbol)
GetDocumentationCommentXml(CultureInfo, Boolean, CancellationToken)

Obtiene el XML (como texto) del comentario asociado al símbolo.

(Heredado de ISymbol)
GetMembers()

Obtenga todos los miembros de este símbolo.

(Heredado de INamespaceOrTypeSymbol)
GetMembers(String)

Obtiene todos los miembros de este símbolo que tienen un nombre determinado.

(Heredado de INamespaceOrTypeSymbol)
GetTypeArgumentCustomModifiers(Int32)

Devuelve modificadores personalizados para el argumento de tipo que se ha sustituido por el parámetro de tipo. Los modificadores corresponden al argumento type en el mismo ordinal dentro de la TypeArguments matriz. Devuelve una matriz vacía si no hay modificadores.

GetTypeMembers()

Obtiene todos los miembros de este símbolo que son tipos.

(Heredado de INamespaceOrTypeSymbol)
GetTypeMembers(String)

Obtenga todos los miembros de este símbolo que son tipos que tienen un nombre determinado, de cualquier aridad.

(Heredado de INamespaceOrTypeSymbol)
GetTypeMembers(String, Int32)

Obtener todos los miembros de este símbolo que son tipos que tienen un nombre y aridad determinados

(Heredado de INamespaceOrTypeSymbol)
ToDisplayParts(NullableFlowState, SymbolDisplayFormat)

Convierte un símbolo en una matriz de partes de cadena, cada una de las cuales tiene un tipo . Útil para colorear la cadena de presentación.

(Heredado de ITypeSymbol)
ToDisplayParts(SymbolDisplayFormat)

Convierta un símbolo en una matriz de partes de cadena, cada una de las cuales tiene un tipo . Útil para colorear la cadena de presentación.

(Heredado de ISymbol)
ToDisplayString(NullableFlowState, SymbolDisplayFormat)

Convierte un ITypeSymbol y un estado de flujo que acepta valores NULL en una representación de cadena.

(Heredado de ITypeSymbol)
ToDisplayString(SymbolDisplayFormat)

Convierte el símbolo en una representación de cadena.

(Heredado de ISymbol)
ToMinimalDisplayParts(SemanticModel, Int32, SymbolDisplayFormat)

Convierta un símbolo en una matriz de partes de cadena, cada una de las cuales tiene un tipo . Puede adaptarse a una ubicación específica en el código fuente. Útil para colorear la cadena de presentación.

(Heredado de ISymbol)
ToMinimalDisplayParts(SemanticModel, NullableFlowState, Int32, SymbolDisplayFormat)

Convierta un símbolo en una matriz de partes de cadena, cada una de las cuales tiene un tipo . Puede adaptarse a una ubicación específica en el código fuente. Útil para colorear la cadena de presentación.

(Heredado de ITypeSymbol)
ToMinimalDisplayString(SemanticModel, Int32, SymbolDisplayFormat)

Convierta un símbolo en una cadena que se pueda mostrar al usuario. Puede adaptarse a una ubicación específica en el código fuente.

(Heredado de ISymbol)
ToMinimalDisplayString(SemanticModel, NullableFlowState, Int32, SymbolDisplayFormat)

Convierte un símbolo en una cadena que se puede mostrar al usuario. Puede adaptarse a una ubicación específica en el código fuente.

(Heredado de ITypeSymbol)
WithNullableAnnotation(NullableAnnotation)

Devuelve el mismo tipo que este tipo, pero con la anotación que acepta valores NULL especificado.

(Heredado de ITypeSymbol)

Métodos de extensión

IsMustOverride(ISymbol)

Representa un tipo distinto de una matriz, un puntero, un parámetro de tipo.

IsNotOverridable(ISymbol)

Representa un tipo distinto de una matriz, un puntero, un parámetro de tipo.

IsOverridable(ISymbol)

Representa un tipo distinto de una matriz, un puntero, un parámetro de tipo.

IsOverrides(ISymbol)

Representa un tipo distinto de una matriz, un puntero, un parámetro de tipo.

IsShared(ISymbol)

Determina si el símbolo es Compartido.

Se aplica a