|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object | +--harpoon.IR.Properties.CFGrapher
CFGrapher
provides a means to externally associate
control-flow graph information with elements of an intermediate
representation.
CFGraphable
Field Summary | |
static CFGrapher |
DEFAULT
Default CFGrapher for HCodeElement s
which implement CFGraphable . |
Constructor Summary | |
CFGrapher()
|
Method Summary | |
Collection |
edgeC(HCodeElement hc)
Returns a Collection of all the edges to and from
this HCodeElement . |
CFGrapher |
edgeReversed()
Returns an edge-reversed grapher based on this one. |
HCodeEdge[] |
edges(HCodeElement hc)
Returns an array of all the edges to and from the specified HCodeElement . |
Set |
getElements(HCode code)
|
abstract HCodeElement |
getFirstElement(HCode hcode)
Deprecated. Use getFirstElements() instead. |
HCodeElement[] |
getFirstElements(HCode hcode)
Returns the first HCodeElement s to be executed; that is,
the roots of the control-flow graph. |
abstract HCodeElement[] |
getLastElements(HCode hcode)
Returns the last HCodeElement s to be executed; that is,
the leaves of the control-flow graph. |
HCodeEdge[] |
pred(HCodeElement hc)
Returns an array of all the edges entering the specified HCodeElement . |
abstract Collection |
predC(HCodeElement hc)
Returns a Collection of all the edges to
this HCodeElement . |
Collection |
predElemC(HCodeElement hc)
Returns a Collection of all the
HCodeElement s preceeding hc . |
HCodeEdge[] |
succ(HCodeElement hc)
Returns an array of all the edges leaving the specified HCodeElement . |
abstract Collection |
succC(HCodeElement hc)
Returns a Collection of all the edges from
this HCodeElement . |
Collection |
succElemC(HCodeElement hc)
Returns a Collection of all the
HCodeElement succeeding hc . |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
public static final CFGrapher DEFAULT
CFGrapher
for HCodeElement
s
which implement CFGraphable
. Does nothing
but cast the supplied HCodeElement
to a
CFGraphable
and invoke the appropriate
corresponding method in the CFGraphable
interface. The root of the control flow graph is
assumed to be whatever HCode.getRootElement
returns.
Comparator
,
Comparable
,
harpoon.Util.Default.comparator
Constructor Detail |
public CFGrapher()
Method Detail |
public HCodeElement[] getFirstElements(HCode hcode)
HCodeElement
s to be executed; that is,
the roots of the control-flow graph.
public abstract HCodeElement[] getLastElements(HCode hcode)
HCodeElement
s to be executed; that is,
the leaves of the control-flow graph.
public abstract HCodeElement getFirstElement(HCode hcode)
public HCodeEdge[] edges(HCodeElement hc)
HCodeElement
.
public HCodeEdge[] pred(HCodeElement hc)
HCodeElement
.
public HCodeEdge[] succ(HCodeElement hc)
HCodeElement
.
public Collection edgeC(HCodeElement hc)
Collection
of all the edges to and from
this HCodeElement
.
public abstract Collection predC(HCodeElement hc)
Collection
of all the edges to
this HCodeElement
.
Each HCodeEdge
returned is guaranteed to return
hc
in response to a call to to()
;
the actual predecessor will be returned from
from()
.
public abstract Collection succC(HCodeElement hc)
Collection
of all the edges from
this HCodeElement
.
Each HCodeEdge
returned is guaranteed to return
hc
in response to a call to
from()
; the actual successor to this
will be returned from to()
.
public Collection predElemC(HCodeElement hc)
Collection
of all the
HCodeElement
s preceeding hc
.
public Collection succElemC(HCodeElement hc)
Collection
of all the
HCodeElement
succeeding hc
.
public Set getElements(HCode code)
public CFGrapher edgeReversed()
grapher
or
grapher.edgeReversed()
.
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |