soot.toolkits.graph
Class CompleteBlockGraph

java.lang.Object
  |
  +--soot.toolkits.graph.BlockGraph
        |
        +--soot.toolkits.graph.CompleteBlockGraph
All Implemented Interfaces:
DirectedGraph

public class CompleteBlockGraph
extends BlockGraph

Represents a CFG where the nodes are Block instances, and where control flow associated with exceptions is taken into account. That is, given a list of Units that have an exception handler in scope, each one of these units will be considered a Block as control can jump to an exception handler at any point while going through the units.

See Also:
Unit, Block, BlockGraph, ZonedBlockGraph

Field Summary
 
Fields inherited from class soot.toolkits.graph.BlockGraph
ARRAYREF, BRIEF, COMPLETE, ZONED
 
Constructor Summary
CompleteBlockGraph(Body body)
          Constructs a graph for the blocks found by partitioning the the unit chain of the provided Body instance.
 
Methods inherited from class soot.toolkits.graph.BlockGraph
getBlocks, getBody, getHeads, getPredsOf, getSuccsOf, getTails, iterator, size, toString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

CompleteBlockGraph

public CompleteBlockGraph(Body body)
Constructs a graph for the blocks found by partitioning the the unit chain of the provided Body instance. Each node in the graph corresponds to a block. The edges are derived from the control flow.

Parameters:
body - The underlying body we want to make a graph for.