Import path
import codeql.controlflow.ControlFlowGraph
Predicates
| additionalNode | Holds if an additional node tagged with tag should be created for n. Edges targeting such nodes are labeled with t and therefore t should be unique for a given (n,tag) pair.
|
| cfgCachedStageRef | Reference to the cached stage of the control flow graph. Should be instantiated with CfgCachedStage::ref().
|
| hasLabel | Holds if the node n has the label l. For example, a label in a goto statement or a goto target.
|
| inConditionalContext | Holds if n is in a conditional context of kind kind. For example, the left-hand side of a short-circuiting && expression is in a boolean conditional context.
|
| postOrInOrder | Holds if n is executed in post-order or in-order. This means that an additional node is created to represent n in the control flow graph. Otherwise, n is represented by the “before” node.
|
| preOrderExpr | Holds if e is executed in pre-order. This is typical for expressions that are pure control-flow constructions without calculation or side effects, such as ConditionalExpr and Switch expressions.
|
| propagatesValue | Holds if the value of child is propagated to parent. For example, the right-hand side of short-circuiting expressions.
|
| successorValueImplies | Holds if t1 implies t2.
|
Types
| Label | A label used for matching jump sources and targets, for example in goto statements.
|