Class ControlFlow::Nodes::ElementNode

A node for a control flow element, that is, an expression or a statement.

Each control flow element maps to zero or more ElementNodes: zero when the element is in unreachable (dead) code, and multiple when there are different splits for the element.

Import path

import csharp

Direct supertypes

Indirect supertypes

Known direct subtypes

Predicates

getASplit

Gets a split for this control flow node, if any.

getElement

Gets the control flow element that this node corresponds to, if any.

getEnclosingCallable

Gets the enclosing callable of this control flow node.

getSplitsString

Gets a comma-separated list of strings for each split in this node, if any.

toString

Gets a textual representation of this control flow node.

Inherited predicates

dominates

Holds if this node dominates that node.

from Node
getAFalseSuccessor

Gets an immediate false successor, if any.

from Node
getAPredecessor

Gets an immediate predecessor, if any.

from Node
getAPredecessorByType

Gets an immediate predecessor node of a given flow type, if any.

from Node
getASuccessor

Gets an immediate successor, if any.

from Node
getASuccessorByType

Gets a successor node of a given type, if any.

from Node
getATrueSuccessor

Gets an immediate true successor, if any.

from Node
getBasicBlock

Gets the basic block that this control flow node belongs to.

from Node
getLocation

Gets the location of this control flow node.

from Node
isBranch

Holds if this node has more than one successor.

from Node
isCondition

Holds if this control flow node has conditional successors.

from Node
isJoin

Holds if this node has more than one predecessor.

from Node
postDominates

Holds if this node post-dominates that node.

from Node
strictlyDominates

Holds if this node strictly dominates that node.

from Node
strictlyPostDominates

Holds if this node strictly post-dominates that node.

from Node

Charpred