IFieldSymbol 接口

定义

表示类、结构或枚举中的字段。

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
实现

注解

此接口保留供其关联的 API 实现。 我们保留将来更改它的权利。

属性

AssociatedSymbol

如果此字段充当自动生成的属性或类似字段的事件的后盾变量,则返回该属性/事件。 否则返回 null。 请注意,将来可能会扩展一组可能的关联符号,以反映语言的变化。

CanBeReferencedByName

如果此符号可以在代码中按其名称引用,则返回 true。

(继承自 ISymbol)
ConstantValue

获取此字段的常量值

ContainingAssembly

获取 IAssemblySymbol 包含程序集。 如果符号在多个程序集之间共享,则返回 null。

(继承自 ISymbol)
ContainingModule

获取 IModuleSymbol 包含模块的项。 如果符号在多个模块之间共享,则返回 null。

(继承自 ISymbol)
ContainingNamespace

获取 INamespaceSymbol 最近的封闭命名空间。 如果符号不包含在命名空间中,则返回 null。

(继承自 ISymbol)
ContainingSymbol

获取 ISymbol 包含符号的立即值。

(继承自 ISymbol)
ContainingType

获取 INamedTypeSymbol 包含类型的值。 如果类型中不包含符号,则返回 null。

(继承自 ISymbol)
CorrespondingTupleField

如果此字段表示元组元素,则返回相应的默认元素字段。 否则返回 null。

CustomModifiers

返回与字段关联的自定义修饰符;如果没有,则返回空数组。

DeclaredAccessibility

获取一个 Accessibility 指示符号的已声明辅助功能。 如果未声明辅助功能,则返回 NotApplicable。

(继承自 ISymbol)
DeclaringSyntaxReferences

获取语法节点 () 源中声明此符号的位置。 例如,某些符号 (,可以在多个位置定义分部类) 。 仅当符号在源代码中声明并且未隐式声明 (看到 IsImplicitlyDeclared 属性) 时,此属性才应返回一个或多个语法节点。

请注意,对于命名空间符号,声明语法可能声明嵌套命名空间。 例如,“命名空间 N1”中 N1 的声明语法节点。N2 {...}” 是 N1 的整个 NamespaceDeclarationSyntax。N2. 对于全局命名空间,声明语法将是 CompilationUnitSyntax。

(继承自 ISymbol)
FixedSize

如果 IsFixedSizeBuffer 为 true,则固定大小缓冲区声明中括号之间的值。 如果 IsFixedSizeBuffer 为 false,或者源 () 中存在错误,例如源) 中的错误常量值,则 FixedSize 为 0。 请注意,对于固定大小的缓冲区声明,请执行此操作。类型将是指针类型,其中指向类型将是固定大小的缓冲区的声明元素类型。

HasConstantValue

如果未将字段声明为“const”,或常量值被省略或错误,则返回 false。 否则为 True。

HasUnsupportedMetadata

指示此符号使用语言不支持的元数据。

示例包括:

  • VB 中的指针类型
  • ByRef 返回类型
  • 所需的自定义修饰符

这与未引用的程序集中定义的元数据符号的引用区分开来。 返回 true 的符号永远不能成功使用,因此不应出现在任何 IDE 功能中。

这是为元数据符号设置的,如下所示:

  • 类型 - 例如,如果类型不受支持 (,则指针类型)
  • 方法 - 不支持参数或返回类型
  • 字段 - 类型不受支持
  • 事件 - 类型不受支持
  • 属性 - 类型不受支持
  • 参数 - 类型不受支持
(继承自 ISymbol)
IsAbstract

获取一个值,该值指示符号是否为抽象符号。

(继承自 ISymbol)
IsConst

如果此字段声明为“const” (,即是常量声明) ,则返回 true。 对于枚举成员,也返回 true。

IsDefinition

获取一个值,该值指示符号是否为原始定义。 如果符号派生自另一个符号,则返回 false(按实例的类型替换)。

(继承自 ISymbol)
IsExplicitlyNamedTupleElement

如果此字段表示给定显式名称的元组元素,则返回 true。

IsExtern

获取一个值,该值指示是否在外部定义符号。

(继承自 ISymbol)
IsFixedSizeBuffer

如果此字段声明为“fixed”,则返回 true。 请注意,对于固定大小的缓冲区声明,这一点。类型将是指针类型,其中指向类型将是固定大小的缓冲区的声明元素类型。

IsImplicitlyDeclared

如果编译器自动创建此符号,并且没有显式对应的源代码声明,则返回 true。

(继承自 ISymbol)
IsOverride

获取一个值,该值指示符号是否是基类符号的重写。

(继承自 ISymbol)
IsReadOnly

如果此字段声明为“readonly”,则返回 true。

IsRequired

如此 如果在构造过程中需要在对象初始值设定项中设置此字段。

IsSealed

获取一个值,该值指示符号是否密封。

(继承自 ISymbol)
IsStatic

获取一个值,该值指示符号是否为静态符号。

(继承自 ISymbol)
IsVirtual

获取一个值,该值指示符号是否为虚拟符号。

(继承自 ISymbol)
IsVolatile

如果此字段声明为“volatile”,则返回 true。

Kind

获取 SymbolKind 指示它的符号类型。

(继承自 ISymbol)
Language

获取源语言 (“C#”或“Visual Basic”) 。

(继承自 ISymbol)
Locations

获取最初在源或元数据中定义符号的位置。 例如,某些符号 (,可以在多个位置定义分部类) 。

(继承自 ISymbol)
MetadataName

获取元数据中显示的符号的名称。 大多数情况下,这与 Name 属性相同,但有以下例外:

  1. 泛型类型的元数据名称包括“'1”、“'2”等后缀,该后缀指示 (它不包括的类型或命名空间的名称) 。
  2. 与 name 属性相比,显式接口名称的元数据名称已删除空格。
  3. 名称长度限制为不超过元数据限制。
(继承自 ISymbol)
MetadataToken

获取与此符号关联的元数据令牌,如果未从元数据加载符号,则为 0。

(继承自 ISymbol)
Name

获取符号名称。 如果未命名,则返回空字符串。

(继承自 ISymbol)
NullableAnnotation

获取此字段的顶级可为 null 性。

OriginalDefinition

获取此符号的原始定义。 如果此符号通过 (表示) 类型替换从另一个符号派生,则会获取原始符号,因为它在源或元数据中定义。

RefCustomModifiers

与 ref 修饰符关联的自定义修饰符;如果没有,则为空数组。

RefKind

返回字段的 RefKind。

Type

获取此字段的类型。

方法

Accept(SymbolVisitor)

表示类、结构或枚举中的字段。

(继承自 ISymbol)
Accept<TArgument,TResult>(SymbolVisitor<TArgument,TResult>, TArgument)

表示类、结构或枚举中的字段。

(继承自 ISymbol)
Accept<TResult>(SymbolVisitor<TResult>)

表示类、结构或枚举中的字段。

(继承自 ISymbol)
Equals(ISymbol, SymbolEqualityComparer)

根据所提供的规则确定此符号是否等于另一个符号 SymbolEqualityComparer

(继承自 ISymbol)
GetAttributes()

获取符号的属性。 如果没有属性,则返回空 IEnumerable<T>

(继承自 ISymbol)
GetDocumentationCommentId()

返回符号的文档注释 ID;如果符号不支持文档注释,则返回 null。

(继承自 ISymbol)
GetDocumentationCommentXml(CultureInfo, Boolean, CancellationToken)

获取与符号关联的注释的文本) 的 XML (。

(继承自 ISymbol)
ToDisplayParts(SymbolDisplayFormat)

将符号转换为字符串部件数组,其中每个部分都有一种。 用于着色显示字符串。

(继承自 ISymbol)
ToDisplayString(SymbolDisplayFormat)

将符号转换为字符串表示形式。

(继承自 ISymbol)
ToMinimalDisplayParts(SemanticModel, Int32, SymbolDisplayFormat)

将符号转换为字符串部件数组,其中每个部分都有一种。 可以根据源代码中的特定位置进行定制。 用于着色显示字符串。

(继承自 ISymbol)
ToMinimalDisplayString(SemanticModel, Int32, SymbolDisplayFormat)

将符号转换为可向用户显示的字符串。 可以根据源代码中的特定位置进行定制。

(继承自 ISymbol)

扩展方法

IsMustOverride(ISymbol)

表示类、结构或枚举中的字段。

IsNotOverridable(ISymbol)

表示类、结构或枚举中的字段。

IsOverridable(ISymbol)

表示类、结构或枚举中的字段。

IsOverrides(ISymbol)

表示类、结构或枚举中的字段。

IsShared(ISymbol)

确定是否共享符号。

适用于