Class SubBasicBlock
A block that can be smaller than or equal to a BasicBlock
. Use this class
when ControlFlowNode
is too fine-grained and BasicBlock
too
coarse-grained. Their successor graph is like that of basic blocks, except
that the blocks are split up with an extra edge right before any instance of
the abstract class SubBasicBlockCutNode
. Users of this library must
therefore extend SubBasicBlockCutNode
to direct where basic blocks will be
split up.
Import path
import semmle.code.cpp.controlflow.SubBasicBlocks
Direct supertypes
Indirect supertypes
Predicates
contains | Holds if |
firstInBB | Holds if this |
getAFalseSuccessor | Gets a node such that the control-flow edge |
getANode | Gets a control-flow node in this |
getAPredecessor | Gets a predecessor in the control-flow graph of |
getASuccessor | Gets a successor in the control-flow graph of |
getATrueSuccessor | Gets a node such that the control-flow edge |
getBasicBlock | Gets the basic block in which this |
getEnclosingFunction | Gets the function that contains this |
getEnd | Gets the last control-flow node in this |
getNode | Gets the |
getNumberOfNodes | Gets the number of control-flow nodes in this |
getRankInBasicBlock | Gets the (1-based) rank of this |
getStart | Gets the first control-flow node in this |
lastInBB | Holds if this |
Inherited predicates
getAPrimaryQlClass | Gets the name of a primary CodeQL class to which this element belongs. | from ElementBase |
getPrimaryQlClasses | Gets a comma-separated list of the names of the primary CodeQL classes to which this element belongs. | from ElementBase |
toString | Gets a textual representation of this element. | from ElementBase |