Class Summary |
Block |
Represents BasicBlocks that partition
a method body. |
BlockGraph |
Implements a CFG for a Body instance where the nodes are Block
instances. |
BriefBlockGraph |
Represents a CFG for a Body instance where the nodes are Block
instances, and where control flow associated with exceptions is ignored. |
BriefUnitGraph |
Represents a CFG where the nodes are Unit instances, and
where no edges are included to account for control flow
associated with exceptions. |
CompleteBlockGraph |
Represents a CFG where the nodes are Block instances, and
where control flow associated with exceptions is taken into account. |
CompleteUnitGraph |
Represents a CFG for a Body instance where the nodes are Unit
instances, and where control flow associated with exceptions is taken into
account. |
HashMutableDirectedGraph |
HashMap based implementation of a MutableBlockGraph. |
PseudoTopologicalOrderer |
Orders in pseudo-topological order,
the nodes of a DirectedGraph instance. |
ReversePseudoTopologicalOrderer |
Convenience class which returns a PseudoTopologicalOrderer with the mReversed
flag set by default. |
StronglyConnectedComponents |
Identifies and provides an interface to query the strongly-connected
components of DirectedGraph instances. |
UnitGraph |
Represents a CFG where the nodes are Unit instances. |
ZonedBlockGraph |
A CFG where the nodes are Block instances, and
where exception boundries are taken into account when
finding the Blocks for the provided Body. |
Toolkit to produce and manipulate various types CFG graphs. The CFG
graphs can have as nodes any implementation of Directed; typically,
Unit elements or Block elements. The latter corresponds to
BasicBlocks of Units. Some of the classes produce UnitGraphs where
the control flow for exceptions is taken into account, while others
produce graphs abstracting away extra exception-related edges.
All classes in this package should now be thread safe. (Thu Feb 10 00:03:48 EST 2000)