Microsoft.CodeAnalysis.FlowAnalysis Namespace
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Classes
BasicBlock |
Represents a basic block in a ControlFlowGraph with a sequence of Operations. Once a basic block is entered, all operations in it are always executed. Optional BranchValue, if non-null, is evaluated after the Operations. Control flow leaves the basic block by taking either the ConditionalSuccessor branch or the FallThroughSuccessor branch. |
ControlFlowBranch |
Represents a control flow branch from a Source basic block to a Destination basic block in a ControlFlowGraph. |
ControlFlowGraph |
Control flow graph representation for a given executable code block OriginalOperation. This graph contains a set of BasicBlocks, with an entry block, zero or more intermediate basic blocks and an exit block. Each basic block contains zero or more Operations and explicit ControlFlowBranch(s) to other basic block(s). |
ControlFlowGraphExtensions | |
ControlFlowRegion |
Encapsulates information about regions of BasicBlocks in a ControlFlowGraph. Regions can overlap, but never cross each other boundaries. |
Structs
CaptureId |
Capture Id is an opaque identifier to represent an intermediate result from an IFlowCaptureOperation. |
Interfaces
ICaughtExceptionOperation |
Represents a exception instance passed by an execution environment to an exception filter or handler. This node is produced only as part of a ControlFlowGraph. |
IFlowAnonymousFunctionOperation |
Represents an anonymous function operation in context of a ControlFlowGraph. Current usage: (1) C# lambda expression. (2) VB anonymous delegate expression. A ControlFlowGraph for the body of the anonymous function is available from the enclosing ControlFlowGraph. |
IFlowCaptureOperation |
Represents that an intermediate result is being captured. This node is produced only as part of a ControlFlowGraph. |
IFlowCaptureReferenceOperation |
Represents a point of use of an intermediate result captured earlier. The fact of capturing the result is represented by IFlowCaptureOperation. This node is produced only as part of a ControlFlowGraph. |
IIsNullOperation |
Represents result of checking whether the Operand is null. For reference types this checks if the Operand is a null reference, for nullable types this checks if the Operand doesn’t have a value. The node is produced as part of a flow graph during rewrite of ICoalesceOperation and IConditionalAccessOperation nodes. |
IStaticLocalInitializationSemaphoreOperation |
Represents the check during initialization of a VB static local that is initialized on the first call of the function, and never again. If the semaphore operation returns true, the static local has not yet been initialized, and the initializer will be run. If it returns false, then the local has already been initialized, and the static local initializer region will be skipped. This node is produced only as part of a ControlFlowGraph. |
Enums
BasicBlockKind |
BasicBlock kind. |
ControlFlowBranchSemantics |
Semantics associated with a ControlFlowBranch. |
ControlFlowConditionKind |
Represents kind of conditional branch from a BasicBlock. |
ControlFlowRegionKind |
Defines kinds of regions that can be present in a ControlFlowGraph |