|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.lang.Objectharpoon.IR.Properties.CFGrapher<HCE>
public abstract class CFGrapher<HCE extends HCodeElement>
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 HCodeElements
which implement CFGraphable. |
| Constructor Summary | |
|---|---|
CFGrapher()
|
|
| Method Summary | |
|---|---|
List<HCodeEdge<HCE>> |
edgeC(HCE hc)
Returns a List of all the edges to and from
this HCodeElement. |
CFGrapher<HCE> |
edgeReversed()
Returns an edge-reversed grapher based on this one. |
Set<HCE> |
getElements(HCode<HCE> code)
|
abstract HCE |
getFirstElement(HCode<HCE> hcode)
Deprecated. Use getFirstElements() instead. |
HCE[] |
getFirstElements(HCode<HCE> hcode)
Returns the first HCodeElements to be executed; that is,
the roots of the control-flow graph. |
abstract HCE[] |
getLastElements(HCode<HCE> hcode)
Returns the last HCodeElements to be executed; that is,
the leaves of the control-flow graph. |
abstract List<HCodeEdge<HCE>> |
predC(HCE hc)
Returns a List of all the edges to
this HCodeElement. |
Collection<HCE> |
predElemC(HCE hc)
Returns a Collection of all the
HCodeElements preceeding hc. |
abstract List<HCodeEdge<HCE>> |
succC(HCE hc)
Returns a List of all the edges from
this HCodeElement. |
Collection<HCE> |
succElemC(HCE 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 HCodeElements
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,
Default.comparator| Constructor Detail |
|---|
public CFGrapher()
| Method Detail |
|---|
public HCE[] getFirstElements(HCode<HCE> hcode)
HCodeElements to be executed; that is,
the roots of the control-flow graph.
public abstract HCE[] getLastElements(HCode<HCE> hcode)
HCodeElements to be executed; that is,
the leaves of the control-flow graph.
public abstract HCE getFirstElement(HCode<HCE> hcode)
public List<HCodeEdge<HCE>> edgeC(HCE hc)
List of all the edges to and from
this HCodeElement.
public abstract List<HCodeEdge<HCE>> predC(HCE hc)
List 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 List<HCodeEdge<HCE>> succC(HCE hc)
List 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<HCE> predElemC(HCE hc)
Collection of all the
HCodeElements preceeding hc.
public Collection<HCE> succElemC(HCE hc)
Collection of all the
HCodeElement succeeding hc.
public Set<HCE> getElements(HCode<HCE> code)
public CFGrapher<HCE> edgeReversed()
grapher or
grapher.edgeReversed().
|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||