protected abstract static class CFGBuilder.ExtendedNode extends Object
type):
 CFGBuilder.NodeHolder. An extended node of this type is just a
       wrapper for a Node (that cannot throw exceptions).
   CFGBuilder.NodeWithExceptionsHolder. A wrapper for a
       Node which can throw exceptions. It contains a label for every possible
       exception type the node might throw.
   CFGBuilder.UnconditionalJump. An unconditional
       jump to a label.
   CFGBuilder.ConditionalJump. A conditional
       jump with two targets for both the 'then' and 'else' branch.
 | Modifier and Type | Class and Description | 
|---|---|
| static class  | CFGBuilder.ExtendedNode.ExtendedNodeTypeExtended node types (description see above). | 
| Modifier and Type | Field and Description | 
|---|---|
| protected BlockImpl | blockThe basic block this extended node belongs to (as determined in phase two). | 
| protected boolean | terminatesExecutionDoes this node terminate the execution? (e.g., "System.exit()") | 
| protected CFGBuilder.ExtendedNode.ExtendedNodeType | typeType of this node. | 
| Modifier | Constructor and Description | 
|---|---|
| protected  | ExtendedNode(CFGBuilder.ExtendedNode.ExtendedNodeType type)Create a new ExtendedNode. | 
| Modifier and Type | Method and Description | 
|---|---|
| BlockImpl | getBlock() | 
| CFGBuilder.Label | getLabel()Returns the label associated with this extended node (only applicable if type is  CFGBuilder.ExtendedNode.ExtendedNodeType.CONDITIONAL_JUMPorCFGBuilder.ExtendedNode.ExtendedNodeType.UNCONDITIONAL_JUMP). | 
| Node | getNode()Returns the node contained in this extended node (only applicable if the type is  NODEorEXCEPTION_NODE). | 
| boolean | getTerminatesExecution() | 
| CFGBuilder.ExtendedNode.ExtendedNodeType | getType() | 
| void | setBlock(BlockImpl b) | 
| void | setTerminatesExecution(boolean terminatesExecution) | 
| String | toString() | 
protected BlockImpl block
protected final CFGBuilder.ExtendedNode.ExtendedNodeType type
protected boolean terminatesExecution
protected ExtendedNode(CFGBuilder.ExtendedNode.ExtendedNodeType type)
type - the type of this nodepublic CFGBuilder.ExtendedNode.ExtendedNodeType getType()
public boolean getTerminatesExecution()
public void setTerminatesExecution(boolean terminatesExecution)
public Node getNode()
NODE or EXCEPTION_NODE).NODE or EXCEPTION_NODE)public CFGBuilder.Label getLabel()
CFGBuilder.ExtendedNode.ExtendedNodeType.CONDITIONAL_JUMP or CFGBuilder.ExtendedNode.ExtendedNodeType.UNCONDITIONAL_JUMP).CFGBuilder.ExtendedNode.ExtendedNodeType.CONDITIONAL_JUMP or CFGBuilder.ExtendedNode.ExtendedNodeType.UNCONDITIONAL_JUMP)public BlockImpl getBlock()
public void setBlock(BlockImpl b)