protected static class CFGBuilder.ConditionalJump extends CFGBuilder.ExtendedNode
CFGBuilder.ExtendedNode.ExtendedNodeType.CONDITIONAL_JUMP.
Important: In the list of extended nodes, there should not be any labels that
point to a conditional jump. Furthermore, the node directly ahead of any conditional jump has
to be a CFGBuilder.NodeWithExceptionsHolder or CFGBuilder.NodeHolder, and the node held by that
extended node is required to be of boolean type.
CFGBuilder.ExtendedNode.ExtendedNodeType| Modifier and Type | Field and Description |
|---|---|
protected Store.FlowRule |
falseFlowRule
The false branch flow rule.
|
protected CFGBuilder.Label |
falseSucc
The false successor label.
|
protected Store.FlowRule |
trueFlowRule
The true branch flow rule.
|
protected CFGBuilder.Label |
trueSucc
The true successor label.
|
block, terminatesExecution, type| Constructor and Description |
|---|
ConditionalJump(CFGBuilder.Label trueSucc,
CFGBuilder.Label falseSucc)
Construct a ConditionalJump.
|
| Modifier and Type | Method and Description |
|---|---|
CFGBuilder.Label |
getElseLabel() |
Store.FlowRule |
getFalseFlowRule() |
CFGBuilder.Label |
getThenLabel() |
Store.FlowRule |
getTrueFlowRule() |
void |
setFalseFlowRule(Store.FlowRule rule) |
void |
setTrueFlowRule(Store.FlowRule rule) |
String |
toString()
Produce a string representation.
|
getBlock, getLabel, getNode, getTerminatesExecution, getType, setBlock, setTerminatesExecutionprotected final CFGBuilder.Label trueSucc
protected final CFGBuilder.Label falseSucc
protected Store.FlowRule trueFlowRule
protected Store.FlowRule falseFlowRule
public ConditionalJump(CFGBuilder.Label trueSucc, CFGBuilder.Label falseSucc)
trueSucc - true successor labelfalseSucc - false successor labelpublic CFGBuilder.Label getThenLabel()
public CFGBuilder.Label getElseLabel()
public Store.FlowRule getTrueFlowRule()
public Store.FlowRule getFalseFlowRule()
public void setTrueFlowRule(Store.FlowRule rule)
public void setFalseFlowRule(Store.FlowRule rule)
public String toString()
toString in class CFGBuilder.ExtendedNodeCFGBuilder.PhaseOneResult.nodeToString(org.checkerframework.dataflow.cfg.CFGBuilder.ExtendedNode)