Class SingleSuccessorBlockImpl
java.lang.Object
org.checkerframework.dataflow.cfg.block.BlockImpl
org.checkerframework.dataflow.cfg.block.SingleSuccessorBlockImpl
- All Implemented Interfaces:
Block,SingleSuccessorBlock,org.plumelib.util.UniqueId
- Direct Known Subclasses:
ExceptionBlockImpl,RegularBlockImpl,SpecialBlockImpl
A basic block that has at most one successor. SpecialBlockImpl extends this, but exit blocks have
no successor.
-
Nested Class Summary
Nested classes/interfaces inherited from interface org.checkerframework.dataflow.cfg.block.Block
Block.BlockType -
Field Summary
FieldsModifier and TypeFieldDescriptionprotected Store.FlowRuleThe initial value for the rule below says that EACH store at the end of a single successor block flows to the corresponding store of the successor.Internal representation of the successor.Fields inherited from class org.checkerframework.dataflow.cfg.block.BlockImpl
predecessors, type -
Constructor Summary
ConstructorsModifierConstructorDescriptionprotectedCreates a new SingleSuccessorBlock. -
Method Summary
Modifier and TypeMethodDescriptionReturns the flow rule for information flowing from this block to its successor.Returns the non-exceptional successor block, ornullif there is no non-exceptional successor.Returns the successors of this basic block.voidsetFlowRule(Store.FlowRule rule) Set the flow rule for information flowing from this block to its successor.voidsetSuccessor(BlockImpl successor) Set a basic block as the successor of this block.Methods inherited from class org.checkerframework.dataflow.cfg.block.BlockImpl
addPredecessor, getPredecessors, getType, getUid, removePredecessorMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.checkerframework.dataflow.cfg.block.Block
getLastNode, getNodes, getPredecessors, getTypeMethods inherited from interface org.plumelib.util.UniqueId
getClassAndUid, getUid
-
Field Details
-
successor
Internal representation of the successor.Is set by
setSuccessor(org.checkerframework.dataflow.cfg.block.BlockImpl). -
flowRule
The initial value for the rule below says that EACH store at the end of a single successor block flows to the corresponding store of the successor.
-
-
Constructor Details
-
SingleSuccessorBlockImpl
Creates a new SingleSuccessorBlock.- Parameters:
type- the type of this basic block
-
-
Method Details
-
getSuccessor
Description copied from interface:SingleSuccessorBlockReturns the non-exceptional successor block, ornullif there is no non-exceptional successor.- Specified by:
getSuccessorin interfaceSingleSuccessorBlock- Returns:
- the non-exceptional successor block, or
nullif there is no non-exceptional successor
-
getSuccessors
Description copied from interface:BlockReturns the successors of this basic block.- Specified by:
getSuccessorsin interfaceBlock- Returns:
- the successors of this basic block
-
setSuccessor
Set a basic block as the successor of this block.- Parameters:
successor- the block that will be the successor of this
-
getFlowRule
Description copied from interface:SingleSuccessorBlockReturns the flow rule for information flowing from this block to its successor.- Specified by:
getFlowRulein interfaceSingleSuccessorBlock- Returns:
- the flow rule for information flowing from this block to its successor
-
setFlowRule
Description copied from interface:SingleSuccessorBlockSet the flow rule for information flowing from this block to its successor.- Specified by:
setFlowRulein interfaceSingleSuccessorBlock- Parameters:
rule- the new flow rule for information flowing from this block to its successor
-