public class ConditionalBlockImpl extends BlockImpl implements ConditionalBlock
Block.BlockType
Modifier and Type | Field and Description |
---|---|
protected Store.FlowRule |
elseFlowRule |
protected @Nullable BlockImpl |
elseSuccessor
Successor of the else branch.
|
protected Store.FlowRule |
thenFlowRule
The rules below say that the THEN store before a conditional block flows to BOTH of the
stores of the then successor, while the ELSE store before a conditional block flows to BOTH
of the stores of the else successor.
|
protected @Nullable BlockImpl |
thenSuccessor
Successor of the then branch.
|
id, lastId, predecessors, type
Constructor and Description |
---|
ConditionalBlockImpl()
Initialize an empty conditional basic block to be filled with contents and linked to other
basic blocks later.
|
Modifier and Type | Method and Description |
---|---|
Store.FlowRule |
getElseFlowRule() |
Block |
getElseSuccessor() |
Store.FlowRule |
getThenFlowRule() |
Block |
getThenSuccessor() |
void |
setElseFlowRule(Store.FlowRule rule)
Set the flow rule for information flowing from this block to its else successor.
|
void |
setElseSuccessor(BlockImpl b)
Set the else branch successor.
|
void |
setThenFlowRule(Store.FlowRule rule)
Set the flow rule for information flowing from this block to its then successor.
|
void |
setThenSuccessor(BlockImpl b)
Set the then branch successor.
|
String |
toString() |
addPredecessor, getId, getPredecessors, getType, removePredecessor
protected Store.FlowRule thenFlowRule
protected Store.FlowRule elseFlowRule
public ConditionalBlockImpl()
public void setThenSuccessor(BlockImpl b)
public void setElseSuccessor(BlockImpl b)
public Block getThenSuccessor()
getThenSuccessor
in interface ConditionalBlock
public Block getElseSuccessor()
getElseSuccessor
in interface ConditionalBlock
public Store.FlowRule getThenFlowRule()
getThenFlowRule
in interface ConditionalBlock
public Store.FlowRule getElseFlowRule()
getElseFlowRule
in interface ConditionalBlock
public void setThenFlowRule(Store.FlowRule rule)
ConditionalBlock
setThenFlowRule
in interface ConditionalBlock
public void setElseFlowRule(Store.FlowRule rule)
ConditionalBlock
setElseFlowRule
in interface ConditionalBlock