ModelExtensions.GetSpeculativeTypeInfo 方法

定义

在指定位置的上下文中绑定节点,并获取类型、符号和诊断等语义信息。 此方法用于获取有关实际上未显示在源代码中的表达式的语义信息。

public:
[System::Runtime::CompilerServices::Extension]
 static Microsoft::CodeAnalysis::TypeInfo GetSpeculativeTypeInfo(Microsoft::CodeAnalysis::SemanticModel ^ semanticModel, int position, Microsoft::CodeAnalysis::SyntaxNode ^ expression, Microsoft::CodeAnalysis::SpeculativeBindingOption bindingOption);
public static Microsoft.CodeAnalysis.TypeInfo GetSpeculativeTypeInfo (this Microsoft.CodeAnalysis.SemanticModel semanticModel, int position, Microsoft.CodeAnalysis.SyntaxNode expression, Microsoft.CodeAnalysis.SpeculativeBindingOption bindingOption);
static member GetSpeculativeTypeInfo : Microsoft.CodeAnalysis.SemanticModel * int * Microsoft.CodeAnalysis.SyntaxNode * Microsoft.CodeAnalysis.SpeculativeBindingOption -> Microsoft.CodeAnalysis.TypeInfo
<Extension()>
Public Function GetSpeculativeTypeInfo (semanticModel As SemanticModel, position As Integer, expression As SyntaxNode, bindingOption As SpeculativeBindingOption) As TypeInfo

参数

semanticModel
SemanticModel
position
Int32

用于标识声明范围和辅助功能的字符位置。 此字符位置必须位于此 SemanticModel 中根语法节点的 FullSpan 内。

expression
SyntaxNode

表示已分析表达式的语法节点。 此语法节点不需要,通常不会出现在引用 SemanticModel 实例的源代码中。

bindingOption
SpeculativeBindingOption

指示是将表达式绑定为完整表达式,还是作为类型或命名空间绑定。 如果提供了 SpeculativeBindingOption.BindAsTypeOrNamespace,则表达式应派生自 TypeSyntax。

返回

表达式最顶层节点的语义信息。

注解

传入的表达式被解释为独立表达式,就像它本身出现在包含“position”的作用域内的某个位置一样。

适用于