Class ConditionalJump
- java.lang.Object
 - 
- org.checkerframework.dataflow.cfg.builder.ExtendedNode
 - 
- org.checkerframework.dataflow.cfg.builder.ConditionalJump
 
 
 
- 
public class ConditionalJump extends ExtendedNode
An extended node of typeExtendedNode.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
NodeWithExceptionsHolderorNodeHolder, and the node held by that extended node is required to be of boolean type. 
- 
- 
Nested Class Summary
- 
Nested classes/interfaces inherited from class org.checkerframework.dataflow.cfg.builder.ExtendedNode
ExtendedNode.ExtendedNodeType 
 - 
 
- 
Field Summary
Fields Modifier and Type Field Description protected Store.FlowRulefalseFlowRuleThe false branch flow rule.protected LabelfalseSuccThe false successor label.protected Store.FlowRuletrueFlowRuleThe true branch flow rule.protected LabeltrueSuccThe true successor label.- 
Fields inherited from class org.checkerframework.dataflow.cfg.builder.ExtendedNode
block, terminatesExecution, type 
 - 
 
- 
Constructor Summary
Constructors Constructor Description ConditionalJump(Label trueSucc, Label falseSucc)Construct a ConditionalJump. 
- 
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description LabelgetElseLabel()Store.FlowRulegetFalseFlowRule()Returns the false branch flow rule.LabelgetThenLabel()Store.FlowRulegetTrueFlowRule()Returns the true branch flow rule.voidsetFalseFlowRule(Store.FlowRule rule)Sets the false branch flow rule.voidsetTrueFlowRule(Store.FlowRule rule)Sets the true branch flow rule.java.lang.StringtoString()Produce a string representation.java.lang.StringtoStringDebug()Returns a verbose string representation of this, useful for debugging.- 
Methods inherited from class org.checkerframework.dataflow.cfg.builder.ExtendedNode
getBlock, getLabel, getNode, getTerminatesExecution, getType, setBlock, setTerminatesExecution 
 - 
 
 - 
 
- 
- 
Field Detail
- 
trueSucc
protected final Label trueSucc
The true successor label. 
- 
falseSucc
protected final Label falseSucc
The false successor label. 
- 
trueFlowRule
protected Store.FlowRule trueFlowRule
The true branch flow rule. 
- 
falseFlowRule
protected Store.FlowRule falseFlowRule
The false branch flow rule. 
 - 
 
- 
Method Detail
- 
getThenLabel
public Label getThenLabel()
 
- 
getElseLabel
public Label getElseLabel()
 
- 
getTrueFlowRule
public Store.FlowRule getTrueFlowRule()
Returns the true branch flow rule.- Returns:
 - the true branch flow rule
 
 
- 
getFalseFlowRule
public Store.FlowRule getFalseFlowRule()
Returns the false branch flow rule.- Returns:
 - the false branch flow rule
 
 
- 
setTrueFlowRule
public void setTrueFlowRule(Store.FlowRule rule)
Sets the true branch flow rule.- Parameters:
 rule- the new true branch flow rule
 
- 
setFalseFlowRule
public void setFalseFlowRule(Store.FlowRule rule)
Sets the false branch flow rule.- Parameters:
 rule- the new false branch flow rule
 
- 
toString
public java.lang.String toString()
Produce a string representation.- Overrides:
 toStringin classExtendedNode- Returns:
 - a string representation
 - See Also:
 PhaseOneResult.nodeToString(org.checkerframework.dataflow.cfg.builder.ExtendedNode)
 
- 
toStringDebug
public java.lang.String toStringDebug()
Description copied from class:ExtendedNodeReturns a verbose string representation of this, useful for debugging.- Specified by:
 toStringDebugin classExtendedNode- Returns:
 - a string representation of this
 
 
 - 
 
 -