harpoon.Backend.Runtime1
Class RuntimeInformation

java.lang.Object
  extended by harpoon.Backend.Generic.RuntimeInformation
      extended by harpoon.Backend.Runtime1.RuntimeInformation

public class RuntimeInformation
extends RuntimeInformation

RuntimeInformation

Version:
$Id: RuntimeInformation.java,v 1.2 2002/02/25 21:02:20 cananian Exp $
Author:
C. Scott Ananian <cananian@alumni.princeton.edu>

Field Summary
 
Fields inherited from class harpoon.Backend.Generic.RuntimeInformation
linker
 
Constructor Summary
RuntimeInformation(RuntimeInformation proxy)
          Creates a RuntimeInformation.
 
Method Summary
 Set baseClasses()
          Returns the set of basic classes which may be referenced in some way by the runtime (for example, as the component type of an array).
 Set initiallyCallableMethods()
          Returns the set of methods called during the initialization of the runtime system.
 Set methodsCallableFrom(HMethod m)
          Returns the set of methods called during the execution of the specified method.
 
Methods inherited from class harpoon.Backend.Generic.RuntimeInformation
union
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

RuntimeInformation

public RuntimeInformation(RuntimeInformation proxy)
Creates a RuntimeInformation.

Method Detail

baseClasses

public Set baseClasses()
Description copied from class: RuntimeInformation
Returns the set of basic classes which may be referenced in some way by the runtime (for example, as the component type of an array). This does not include classes which may be instantiated by the runtime, constructors for which ought to be included as callable methods instead of including them in the result set from this method. The only classes I can think of that ought to be included in this set are the 8 primitive type classes, which are sometimes referenced via reflection (as opposed to instantiation) via the java.lang.Class.forName() method; feel free to extend your implementation if I happen to be missing some possibilities.

Specified by:
baseClasses in class RuntimeInformation
Returns:
a Set of HClasses.

methodsCallableFrom

public Set methodsCallableFrom(HMethod m)
Description copied from class: RuntimeInformation
Returns the set of methods called during the execution of the specified method. The method may or may not be native; a particular run-time may do something "tricky" during the execution of an otherwise normal method which can be described by the results of this call. The specified method may not be null. To indicate that a particular method may cause the instantiation of one of more classes, appropriate HConstructors should be included in the returned set.

Specified by:
methodsCallableFrom in class RuntimeInformation
Returns:
a Set of HMethods.

initiallyCallableMethods

public Set initiallyCallableMethods()
Description copied from class: RuntimeInformation
Returns the set of methods called during the initialization of the runtime system. These methods are called before the "main" method of the program. Instantiation of any classes during the runtime system initialization should be indicated via inclusion of an appropriate HConstructor in the set of callable methods.

Specified by:
initiallyCallableMethods in class RuntimeInformation
Returns:
a Set of HMethods.