edu.rice.cs.dynamicjava.symbol
Class Java5Class

java.lang.Object
  extended by edu.rice.cs.dynamicjava.symbol.JavaClass
      extended by edu.rice.cs.dynamicjava.symbol.Java5Class
All Implemented Interfaces:
Access.Limited, Access.Module, DJClass

public class Java5Class
extends JavaClass

DJClass implementation that wraps a Java 5 reflection Class object. To prevent linkage errors, this class should only be dynamically loaded if it's possible that the target platform does not support the Java 5 APIs.


Nested Class Summary
 
Nested classes/interfaces inherited from class edu.rice.cs.dynamicjava.symbol.JavaClass
JavaClass.JavaConstructor, JavaClass.JavaField, JavaClass.JavaMethod
 
Field Summary
 
Fields inherited from class edu.rice.cs.dynamicjava.symbol.JavaClass
_c
 
Constructor Summary
Java5Class(Class<?> c)
           
 
Method Summary
 Access.Module accessModule()
          Get the module enclosing this symbol's declaration.
 Iterable<DJClass> declaredClasses()
           
 Iterable<DJConstructor> declaredConstructors()
           
 Iterable<DJField> declaredFields()
           
 Iterable<DJMethod> declaredMethods()
           
 String declaredName()
          Produce the (unqualified) declared name of the given class
 Iterable<Type> declaredSupertypes()
          List the declared supertypes of this class
 Iterable<VariableType> declaredTypeParameters()
          List all type variables declared by this class (but not by its enclosing classes)
 DJClass declaringClass()
          The class that declares this class, or null if this is declared at a top-level or local scope
 Type immediateSuperclass()
          Return the type bound to super in the context of this class, or null if super is not defined
 String toString()
           
 
Methods inherited from class edu.rice.cs.dynamicjava.symbol.JavaClass
accessibility, equals, fullName, hashCode, hasRuntimeBindingsParams, isAbstract, isAnonymous, isFinal, isInterface, isStatic, load, packageName
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Constructor Detail

Java5Class

public Java5Class(Class<?> c)
Method Detail

declaredName

public String declaredName()
Description copied from interface: DJClass
Produce the (unqualified) declared name of the given class

Specified by:
declaredName in interface Access.Limited
Specified by:
declaredName in interface DJClass
Overrides:
declaredName in class JavaClass

accessModule

public Access.Module accessModule()
Description copied from interface: Access.Limited
Get the module enclosing this symbol's declaration.

Specified by:
accessModule in interface Access.Limited
Overrides:
accessModule in class JavaClass

declaringClass

public DJClass declaringClass()
Description copied from interface: DJClass
The class that declares this class, or null if this is declared at a top-level or local scope

Specified by:
declaringClass in interface DJClass
Overrides:
declaringClass in class JavaClass

declaredTypeParameters

public Iterable<VariableType> declaredTypeParameters()
List all type variables declared by this class (but not by its enclosing classes)

Specified by:
declaredTypeParameters in interface DJClass
Overrides:
declaredTypeParameters in class JavaClass

declaredSupertypes

public Iterable<Type> declaredSupertypes()
List the declared supertypes of this class

Specified by:
declaredSupertypes in interface DJClass
Overrides:
declaredSupertypes in class JavaClass

declaredFields

public Iterable<DJField> declaredFields()
Specified by:
declaredFields in interface DJClass
Overrides:
declaredFields in class JavaClass

declaredConstructors

public Iterable<DJConstructor> declaredConstructors()
Specified by:
declaredConstructors in interface DJClass
Overrides:
declaredConstructors in class JavaClass

declaredMethods

public Iterable<DJMethod> declaredMethods()
Specified by:
declaredMethods in interface DJClass
Overrides:
declaredMethods in class JavaClass

declaredClasses

public Iterable<DJClass> declaredClasses()
Specified by:
declaredClasses in interface DJClass
Overrides:
declaredClasses in class JavaClass

immediateSuperclass

public Type immediateSuperclass()
Return the type bound to super in the context of this class, or null if super is not defined

Specified by:
immediateSuperclass in interface DJClass
Overrides:
immediateSuperclass in class JavaClass
Returns:
The type bound to super in the context of this class, or null if super is not defined

toString

public String toString()
Overrides:
toString in class JavaClass