Compartir a través de


IFieldSymbol Interfaz

Definición

Representa un campo de una clase, estructura o enumeración.

public interface class IFieldSymbol : IEquatable<Microsoft::CodeAnalysis::ISymbol ^>, Microsoft::CodeAnalysis::ISymbol
public interface IFieldSymbol : IEquatable<Microsoft.CodeAnalysis.ISymbol>, Microsoft.CodeAnalysis.ISymbol
type IFieldSymbol = interface
    interface ISymbol
    interface IEquatable<ISymbol>
Public Interface IFieldSymbol
Implements IEquatable(Of ISymbol), ISymbol
Implementaciones

Comentarios

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

Propiedades

AssociatedSymbol

Si este campo actúa como variable de respaldo para una propiedad generada automáticamente o un evento similar a un campo, devuelve esa propiedad o evento. De lo contrario, 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.

CanBeReferencedByName

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

(Heredado de ISymbol)
ConstantValue

Obtiene el valor constante de este campo.

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

Si este campo representa un elemento de tupla, devuelve un campo de elemento predeterminado correspondiente. De lo contrario, devuelve null.

CustomModifiers

Devuelve modificadores personalizados asociados al campo o una matriz vacía si no hay ninguno.

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

Si IsFixedSizeBuffer es true, el valor entre corchetes de la declaración de búfer de tamaño fijo. Si IsFixedSizeBuffer es false o se produce un error (por ejemplo, un valor constante incorrecto en el origen), FixedSize es 0. Tenga en cuenta que para la declaración de búfer de tamaño fijo, esto. El tipo será un tipo de puntero, del que el tipo apuntado será el tipo de elemento declarado del búfer de tamaño fijo.

HasConstantValue

Devuelve false si el campo no se ha declarado como "const", o si el valor constante se omite o se ha producido un error. En caso contrario, es True.

HasUnsupportedMetadata

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

Entre los ejemplos se incluyen:

  • 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)
IsAbstract

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

(Heredado de ISymbol)
IsConst

Devuelve true si este campo se declaró como "const" (es decir, es una declaración constante). También devuelve true para un miembro de enumeración.

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 instancia.

(Heredado de ISymbol)
IsExplicitlyNamedTupleElement

Devuelve true si este campo representa un elemento de tupla al que se le ha asignado un nombre explícito.

IsExtern

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

(Heredado de ISymbol)
IsFixedSizeBuffer

Devuelve true si este campo se declaró como "fijo". Tenga en cuenta que para una declaración de búfer de tamaño fijo, esto. El tipo será un tipo de puntero, del que el tipo apuntado será el tipo de elemento declarado del búfer de tamaño fijo.

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

Devuelve true si este campo se declaró como "readonly".

IsRequired

True si es necesario establecer este campo en un inicializador de objeto durante la construcción.

IsSealed

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

(Heredado de ISymbol)
IsStatic

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

(Heredado de ISymbol)
IsVirtual

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

(Heredado de ISymbol)
IsVolatile

Devuelve true si este campo se declaró como "volátil".

Kind

Obtiene el SymbolKind objeto 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)
MetadataName

Obtiene el nombre de un símbolo tal y como aparece en los metadatos. La mayoría de las veces, esto 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 ha quitado espacios, 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 metadatos.

(Heredado de ISymbol)
Name

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

(Heredado de ISymbol)
NullableAnnotation

Obtiene la nulabilidad de nivel superior de este campo.

OriginalDefinition

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

RefCustomModifiers

Modificadores personalizados asociados al modificador ref o una matriz vacía si no hay ninguno.

RefKind

Devuelve el RefKind del campo.

Type

Obtiene el tipo de este campo.

Métodos

Accept(SymbolVisitor)

Representa un campo de una clase, estructura o enumeración.

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

Representa un campo de una clase, estructura o enumeración.

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

Representa un campo de una clase, estructura o enumeración.

(Heredado de ISymbol)
Equals(ISymbol, SymbolEqualityComparer)

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

(Heredado de ISymbol)
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)
ToDisplayParts(SymbolDisplayFormat)

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

(Heredado de ISymbol)
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 elementos de cadena, cada uno de los 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)
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)

Métodos de extensión

IsMustOverride(ISymbol)

Representa un campo de una clase, estructura o enumeración.

IsNotOverridable(ISymbol)

Representa un campo de una clase, estructura o enumeración.

IsOverridable(ISymbol)

Representa un campo de una clase, estructura o enumeración.

IsOverrides(ISymbol)

Representa un campo de una clase, estructura o enumeración.

IsShared(ISymbol)

Determina si el símbolo es Compartido.

Se aplica a