|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object | +--harpoon.ClassFile.HCode | +--harpoon.IR.Quads.Code
Quads.Code
is an abstract superclass of codeviews
using the components in IR.Quads
. It implements
shared methods for the various codeviews using Quad
s.
Nested Class Summary |
Nested classes inherited from class harpoon.ClassFile.HCode |
HCode.PrintCallback |
Field Summary | |
protected AllocationInformation |
ai
AllocationInformation for this HCode . |
protected HMethod |
parent
The method that this code view represents. |
protected QuadFactory |
qf
Quad factory. |
protected Quad |
quads
The quadruples composing this code view. |
Constructor Summary | |
protected |
Code(HMethod parent,
Quad quads)
constructor. |
Method Summary | |
abstract HCodeAndMaps |
clone(HMethod newMethod)
Clone this code representation. |
protected HCodeAndMaps |
cloneHelper(Code qc)
Helper for clone |
protected HCodeAndMaps |
cloneHelper(Code _this,
Code qc)
Helper for clone |
ArrayFactory |
elementArrayFactory()
Return an ArrayFactory for the HCodeElement s
composing this HCode . |
AllocationInformation |
getAllocationInformation()
Return the AllocationInformation for this codeview. |
Derivation |
getDerivation()
Return a Derivation for this codeview. |
HCodeElement[] |
getElements()
Returns an ordered list of the Quad s
making up this code view. |
Iterator |
getElementsI()
Returns an iterator over the Quad s making up
this code view. |
HCodeElement[] |
getLeafElements()
Returns the leaves of the control flow graph. |
HMethod |
getMethod()
Return the HMethod this codeview
belongs to. |
abstract String |
getName()
Return the name of this code view. |
HCodeElement |
getRootElement()
Returns the root of the control flow graph. |
protected QuadFactory |
newQF(HMethod parent)
Create a proper QuadFactory. |
void |
print(PrintWriter pw,
HCode.PrintCallback callback)
Pretty-print this code view using the specified callback. |
void |
setAllocationInformation(AllocationInformation ai)
Set an AllocationInformation for this codeview. |
Methods inherited from class harpoon.ClassFile.HCode |
clone, elementIndexer, getElementsE, getElementsL, print, toString |
Methods inherited from class java.lang.Object |
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Field Detail |
protected final HMethod parent
protected Quad quads
protected final QuadFactory qf
protected AllocationInformation ai
AllocationInformation
for this HCode
.
Constructor Detail |
protected Code(HMethod parent, Quad quads)
Method Detail |
protected QuadFactory newQF(HMethod parent)
public abstract HCodeAndMaps clone(HMethod newMethod)
clone
in class HCode
protected final HCodeAndMaps cloneHelper(Code qc)
protected HCodeAndMaps cloneHelper(Code _this, Code qc)
public abstract String getName()
getName
in class HCode
public HMethod getMethod()
HMethod
this codeview
belongs to.
getMethod
in class HCode
public AllocationInformation getAllocationInformation()
AllocationInformation
for this codeview.
public void setAllocationInformation(AllocationInformation ai)
AllocationInformation
for this codeview.
public Derivation getDerivation()
Derivation
for this codeview.
null
, always.public HCodeElement getRootElement()
getRootElement
in class HCode
null
if this notion
is not applicable.public HCodeElement[] getLeafElements()
getLeafElements
in class HCode
null
if this notion
is not applicable.public HCodeElement[] getElements()
Quad
s
making up this code view. The root of the graph
is in element 0 of the array.
getElements
in class HCode
Instr
public Iterator getElementsI()
Quad
s making up
this code view. The root of the graph is the first element
in the iteration.
getElementsI
in class HCode
public ArrayFactory elementArrayFactory()
HCode
ArrayFactory
for the HCodeElement
s
composing this HCode
.
elementArrayFactory
in class HCode
public void print(PrintWriter pw, HCode.PrintCallback callback)
HCode
print
in class HCode
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |