ILocalSymbol 接口

定义

表示方法主体中的局部变量。

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

注解

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

属性

CanBeReferencedByName

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

(继承自 ISymbol)
ConstantValue

获取此局部变量的常量值。

ContainingAssembly

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

(继承自 ISymbol)
ContainingModule

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

(继承自 ISymbol)
ContainingNamespace

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

(继承自 ISymbol)
ContainingSymbol

ISymbol获取立即包含符号的 。

(继承自 ISymbol)
ContainingType

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

(继承自 ISymbol)
DeclaredAccessibility

获取一个 Accessibility ,它指示符号的声明可访问性。 如果未声明可访问性,则返回 NotApplicable。

(继承自 ISymbol)
DeclaringSyntaxReferences

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

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

(继承自 ISymbol)
HasConstantValue

如果局部变量未声明为“const”,或者省略常量值或错误,则返回 false。 否则为 true。

HasUnsupportedMetadata

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

示例包括:

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

例如,这不同于对未引用的程序集中定义的元数据符号的引用。 返回 true 的符号永远不能成功使用,因此不应出现在任何 IDE 功能中。

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

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

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

(继承自 ISymbol)
IsConst

如果此局部变量声明为“const” (即是常量声明) ,则返回 true。 此外,为枚举成员返回 true。

IsDefinition

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

(继承自 ISymbol)
IsExtern

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

(继承自 ISymbol)
IsFixed

如果在不安全的上下文) 中使用固定指针初始值设定项 (声明局部变量,则返回 true。

IsForEach

如果此局部变量声明为迭代变量,则返回 true

IsFunctionValue

如果此局部变量是函数返回变量,其名称是函数的名称,其类型是函数的返回类型,其初始值是其类型的默认值,则返回 true。

IsImplicitlyDeclared

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

(继承自 ISymbol)
IsOverride

获取一个值,该值指示符号是否为基类符号的替代。

(继承自 ISymbol)
IsRef

如果此本地为 ref local 或 ref readonly local,则返回 true。 使用 RefKind 获取更多详细信息。

IsSealed

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

(继承自 ISymbol)
IsStatic

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

(继承自 ISymbol)
IsUsing

如果在“using 语句”的资源获取中声明局部变量,则返回 true;否则为 false

IsVirtual

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

(继承自 ISymbol)
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

获取 ISymbol 符号的原始定义的 。 如果此符号派生自另一个符号(例如,通过类型替换),则会获取原始符号,就像在源或元数据中定义的那样。

(继承自 ISymbol)
RefKind

变量是 ref 还是 ref readonly 局部变量。

ScopedKind

返回本地 的作用域类型。

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)

扩展方法

IsCatch(ILocalSymbol)

表示方法主体中的局部变量。

IsFor(ILocalSymbol)

表示方法主体中的局部变量。

IsForEach(ILocalSymbol)

表示方法主体中的局部变量。

IsMustOverride(ISymbol)

表示方法主体中的局部变量。

IsNotOverridable(ISymbol)

表示方法主体中的局部变量。

IsOverridable(ISymbol)

表示方法主体中的局部变量。

IsOverrides(ISymbol)

表示方法主体中的局部变量。

IsShared(ISymbol)

确定符号是否为“共享”。

适用于