|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.lang.Objectharpoon.Backend.Generic.Runtime
harpoon.Backend.Runtime1.Runtime
public class Runtime
Runtime1.Runtime is a no-frills implementation of the runtime
abstract class.
| Nested Class Summary | |
|---|---|
protected static class |
Runtime.ExtraClazInfo
provides a means for a subclass to add extra fields to DataClaz. |
| Nested classes/interfaces inherited from class harpoon.Backend.Generic.Runtime |
|---|
Runtime.ObjectBuilder, Runtime.TreeBuilder |
| Field Summary | |
|---|---|
protected AllocationStrategy |
as
|
protected CallGraph |
cg
|
protected ClassHierarchy |
ch
|
protected Frame |
frame
|
protected HMethod |
main
|
protected Runtime.ObjectBuilder |
ob
|
protected List |
staticInitializers
|
| Fields inherited from class harpoon.Backend.Generic.Runtime |
|---|
configurationSet |
| Constructor Summary | |
|---|---|
Runtime(Frame frame,
AllocationStrategy as,
HMethod main,
boolean prependUnderscore)
Creates a new Runtime1.Runtime. |
|
Runtime(Frame frame,
AllocationStrategy as,
HMethod main,
boolean prependUnderscore,
ObjectBuilder.RootOracle rootOracle)
Creates a new Runtime1.Runtime. |
|
| Method Summary | |
|---|---|
List<HData> |
classData(HClass hc)
Returns a list of HDatas which are needed for the
given class. |
protected Runtime.ExtraClazInfo |
getExtraClazInfo()
A means for a subclass to set this. |
NameMap |
getNameMap()
Returns a NameMap valid for this
Generic.Runtime. |
TreeBuilder |
getTreeBuilder()
Returns a TreeBuilder object for this
Generic.Runtime. |
protected Runtime.ObjectBuilder |
initObjectBuilder(ObjectBuilder.RootOracle ro)
|
protected TreeBuilder |
initTreeBuilder()
|
HCodeFactory |
nativeTreeCodeFactory(HCodeFactory hcf)
This code factory hook allows the runtime to return runtime-specific stubs for native methods --- or any other method which the runtime wishes to reimplement. |
String |
resourcePath(String basename)
Prefixes a runtime-specific path onto the specific resource name, so that transformations can refer to runtime-specific properties files in a uniform manner. |
Collection |
runtimeCallableMethods()
Return a Set of HMethods
and HClasses which are referenced /
callable by code in the runtime implementation (and should
therefore be included in every class hierarchy). |
void |
setCallGraph(CallGraph cg)
Sets the CallGraph to use for this
Generic.Runtime. |
void |
setClassHierarchy(ClassHierarchy ch)
Sets the ClassHierarchy to use for this
Generic.Runtime. |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
|---|
protected final Frame frame
protected final HMethod main
protected ClassHierarchy ch
protected CallGraph cg
protected final AllocationStrategy as
protected final Runtime.ObjectBuilder ob
protected List staticInitializers
| Constructor Detail |
|---|
public Runtime(Frame frame,
AllocationStrategy as,
HMethod main,
boolean prependUnderscore)
Runtime1.Runtime.
public Runtime(Frame frame,
AllocationStrategy as,
HMethod main,
boolean prependUnderscore,
ObjectBuilder.RootOracle rootOracle)
Runtime1.Runtime.
| Method Detail |
|---|
protected Runtime.ObjectBuilder initObjectBuilder(ObjectBuilder.RootOracle ro)
public TreeBuilder getTreeBuilder()
RuntimeTreeBuilder object for this
Generic.Runtime.
getTreeBuilder in class Runtimepublic NameMap getNameMap()
RuntimeNameMap valid for this
Generic.Runtime.
getNameMap in class Runtimepublic String resourcePath(String basename)
Runtime
resourcePath in class Runtimepublic void setCallGraph(CallGraph cg)
RuntimeCallGraph to use for this
Generic.Runtime. Some runtime options do not
require a call graph, and thus do not require that this method
ever be called. However, for those that do, this method must
be called at least once before the TreeBuilder or
classData are used to generate tree form. It may
be called multiple times if transformations cause the call
graph to change.
setCallGraph in class Runtimepublic void setClassHierarchy(ClassHierarchy ch)
RuntimeClassHierarchy to use for this
Generic.Runtime. This method must be called at least
once before the TreeBuilder or classData
are used to generate tree form. It may be called multiple times
if transformations cause the class hierarchy to change.
setClassHierarchy in class Runtimeprotected TreeBuilder initTreeBuilder()
public HCodeFactory nativeTreeCodeFactory(HCodeFactory hcf)
Runtime
The code factory returned by this method should return
a null for methods which the output routine
should skip. For example, if stubs are not needed for
native methods, then the code factory should return
null when convert() is called
on a native method (just as the standard code factories do).
The code factory given should produce tree form. The returned code factory should also produce tree form; the tree form need not be canonicalized or optimized.
nativeTreeCodeFactory in class Runtimepublic Collection runtimeCallableMethods()
RuntimeSet of HMethods
and HClasses which are referenced /
callable by code in the runtime implementation (and should
therefore be included in every class hierarchy).
runtimeCallableMethods in class Runtimepublic List<HData> classData(HClass hc)
RuntimeHDatas which are needed for the
given class.
classData in class Runtimeprotected Runtime.ExtraClazInfo getExtraClazInfo()
|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||