IInvocationOperation 接口

定义

表示方法的调用。

当前用法: (1) C# 方法调用表达式。 (2) C# 集合元素初始值设定项。 例如,在以下集合初始值设定项中, new C() { 1, 2, 3 }我们将有 3 IInvocationOperation 个节点,每个节点都将调用相应的 Add 方法,其中 1、2、3 作为参数。 (3) VB 方法调用表达式。 (4) VB 集合元素初始值设定项。 与 C# 示例类似, New C() From {1, 2, 3} 将有 3 IInvocationOperation 个节点,分别为 1、2 和 3 作为参数。

public interface class IInvocationOperation : Microsoft::CodeAnalysis::IOperation
public interface IInvocationOperation : Microsoft.CodeAnalysis.IOperation
type IInvocationOperation = interface
    interface IOperation
Public Interface IInvocationOperation
Implements IOperation
实现

注解

此节点与以下操作类型相关联:

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

属性

Arguments

调用的参数,不包括实例参数。 参数按计算顺序排列。

ChildOperations

此操作的子操作的可枚举。

(继承自 IOperation)
Children
已过时.

此操作的子操作数组。 已弃用:请使用 ChildOperations

(继承自 IOperation)
ConstantValue

如果操作是计算结果为常量值的表达式, HasValue 则 为 true,并且 Value 是表达式的值。 否则, HasValue 为 false。

(继承自 IOperation)
ConstrainedToType

将使用哪个运行时类型来解析 的虚拟调用的类型 TargetMethod参数。 如果 以静态方式解析,或 是实例方法,则 TargetMethod 为 Null。

Instance

要提供给 方法的“This”或“Me”实例;如果方法为静态,则为 null。

IsImplicit

如果编译器生成 /由编译器代码隐式计算,则设置为 True

(继承自 IOperation)
IsVirtual

如果调用使用虚拟机制,则为 True;否则为 false。

Kind

标识操作的类型。

(继承自 IOperation)
Language

IOperation 的源语言。 可能的值为 CSharpVisualBasic

(继承自 IOperation)
Parent

将此操作作为子级的 IOperation。 根为 Null。

(继承自 IOperation)
SemanticModel

用于生成此操作的可选语义模型。 对于使用 GetOperation(SyntaxNode, CancellationToken) API 和对分析器所做的操作回调从源生成的操作为非 null。 对于 中的操作, ControlFlowGraph为 Null。

(继承自 IOperation)
Syntax

已分析以生成操作的语法。

(继承自 IOperation)
TargetMethod

要调用的方法。

Type

操作的结果类型;如果操作不生成结果,则为 null。

(继承自 IOperation)

方法

Accept(OperationVisitor)

表示方法的调用。

当前用法: (1) C# 方法调用表达式。 (2) C# 集合元素初始值设定项。 例如,在以下集合初始值设定项中, new C() { 1, 2, 3 }我们将有 3 IInvocationOperation 个节点,每个节点都将调用相应的 Add 方法,其中 1、2、3 作为参数。 (3) VB 方法调用表达式。 (4) VB 集合元素初始值设定项。 与 C# 示例类似, New C() From {1, 2, 3} 将有 3 IInvocationOperation 个节点,分别为 1、2 和 3 作为参数。

(继承自 IOperation)
Accept<TArgument,TResult>(OperationVisitor<TArgument,TResult>, TArgument)

表示方法的调用。

当前用法: (1) C# 方法调用表达式。 (2) C# 集合元素初始值设定项。 例如,在以下集合初始值设定项中, new C() { 1, 2, 3 }我们将有 3 IInvocationOperation 个节点,每个节点都将调用相应的 Add 方法,其中 1、2、3 作为参数。 (3) VB 方法调用表达式。 (4) VB 集合元素初始值设定项。 与 C# 示例类似, New C() From {1, 2, 3} 将有 3 IInvocationOperation 个节点,分别为 1、2 和 3 作为参数。

(继承自 IOperation)

扩展方法

Descendants(IOperation)

以求值顺序返回给定 operation 的所有后代运算。

DescendantsAndSelf(IOperation)

返回给定 operation 的所有后代运算,包括计算顺序中给定 operation 的 。

适用于