public class ExceptionBlockImpl extends SingleSuccessorBlockImpl implements ExceptionBlock
Block implementation hierarchy.Block.BlockType| Modifier and Type | Field and Description |
|---|---|
protected Map<TypeMirror,Set<Block>> |
exceptionalSuccessors
Set of exceptional successors.
|
protected @Nullable Node |
node
The node of this block.
|
flowRule, successorpredecessors, type| Constructor and Description |
|---|
ExceptionBlockImpl()
Create an empty exceptional block.
|
| Modifier and Type | Method and Description |
|---|---|
void |
addExceptionalSuccessor(BlockImpl b,
TypeMirror cause)
Add an exceptional successor.
|
Map<TypeMirror,Set<Block>> |
getExceptionalSuccessors()
Returns the list of exceptional successor blocks as an unmodifiable map.
|
@Nullable Node |
getLastNode()
Returns the last node of this block, or null if none.
|
Node |
getNode()
Returns the node of this block.
|
List<Node> |
getNodes()
Returns the nodes contained within this basic block.
|
Set<Block> |
getSuccessors()
Returns the successors of this basic block.
|
void |
setNode(Node c)
Set the node.
|
String |
toString() |
getFlowRule, getSuccessor, setFlowRule, setSuccessoraddPredecessor, getPredecessors, getType, getUid, removePredecessorclone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitgetFlowRule, getSuccessor, setFlowRulegetPredecessors, getTypeprotected final Map<TypeMirror,Set<Block>> exceptionalSuccessors
public ExceptionBlockImpl()
public void setNode(Node c)
public Node getNode()
ExceptionBlockgetNode in interface ExceptionBlockpublic List<Node> getNodes()
The following invariant holds.
forall n in getNodes() :: n.getBlock() == this
This implementation returns a singleton list.
public @Nullable Node getLastNode()
BlockgetLastNode in interface Blocknullpublic void addExceptionalSuccessor(BlockImpl b, TypeMirror cause)
b - the successorcause - the exception type that leads to the given blockpublic Map<TypeMirror,Set<Block>> getExceptionalSuccessors()
ExceptionBlockgetExceptionalSuccessors in interface ExceptionBlockpublic Set<Block> getSuccessors()
BlockgetSuccessors in interface BlockgetSuccessors in class SingleSuccessorBlockImpl