Microsoft.CodeAnalysis.FlowAnalysis 命名空间

BasicBlock

表示一个包含序列Operations的基本ControlFlowGraph块。 输入基本块后,始终执行其中的所有操作。 可选 BranchValue,如果为非 null,则计算后 Operations。 控制流通过获取 ConditionalSuccessor 分支或 FallThroughSuccessor 分支离开基本块。

ControlFlowBranch

表示从基本块到Destination基本块中的ControlFlowGraph控制流分支Source

ControlFlowGraph

给定可执行代码块 OriginalOperation的控制流图表示形式。 此图包含一组 BasicBlocks,其中包含一个条目块、零个或多个中间基本块和一个退出块。 每个基本块包含零个或多个 Operations 显式 ControlFlowBranch () 到其他基本块 (s) 。

ControlFlowGraphExtensions
ControlFlowRegion

封装有关 s ControlFlowGraph区域BasicBlock的信息。 区域可以重叠,但永远不会跨越彼此边界。

结构

CaptureId

捕获 ID 是表示中间结果的 IFlowCaptureOperation不透明标识符。

接口

ICaughtExceptionOperation

表示由执行环境传递给异常筛选器或处理程序的异常实例。 此节点仅作为一部分 ControlFlowGraph生成。

IFlowAnonymousFunctionOperation

表示上下文中的 ControlFlowGraph匿名函数操作。

当前用法: (1) C# lambda 表达式。 (2) VB 匿名委托表达式。

ControlFlowGraph匿名函数的正文可从封闭ControlFlowGraph中获取。
IFlowCaptureOperation

表示正在捕获中间结果。 此节点仅作为一部分 ControlFlowGraph生成。

IFlowCaptureReferenceOperation

表示前面捕获的中间结果的使用点。 捕获结果的事实由 IFlowCaptureOperation。 此节点仅作为一部分 ControlFlowGraph生成。

IIsNullOperation

表示检查 Operand 是否为 null 的结果。 对于引用类型,此类型检查是否 Operand 为 null 引用,对于可为 null 的类型,此类型检查是否 Operand 没有值。 在重写 ICoalesceOperation 节点和 IConditionalAccessOperation 节点期间,该节点作为流图的一部分生成。

IStaticLocalInitializationSemaphoreOperation

表示在首次调用函数时初始化的 VB 静态本地的检查,再也不会进行。 如果信号灯操作返回 true,则尚未初始化静态本地,并且初始值设定项将运行。 如果返回 false,则本地已初始化,将跳过静态本地初始值设定项区域。 此节点仅作为一部分 ControlFlowGraph生成。

枚举

BasicBlockKind

BasicBlock kind。

ControlFlowBranchSemantics

与 . ControlFlowBranch. 关联的语义

ControlFlowConditionKind

表示一个 BasicBlock条件分支的类型。

ControlFlowRegionKind

定义可以存在于 a ControlFlowGraph