A control dependency links a vertex to the control flow element which may have an influence on its execution. Within if(p) a else b, a and b have a control dependency on the if (which in turn decides based on p).

happensInEveryBranch - to check whether a list of control dependencies is exhaustive

interface ControlDependency {
    id: NodeId;
    when?: boolean;
}

Properties

Properties

id: NodeId

The id of the node that causes the control dependency to be active (e.g., the condition of an if)

when?: boolean

when does this control dependency trigger (if the condition is true or false)?