kmy.jint.reflect
Class BasicClass

java.lang.Object
  |
  +--kmy.jint.reflect.AbstractClass
        |
        +--kmy.jint.reflect.BasicClass
Direct Known Subclasses:
CompiledClass, JintClass, JVMClass

public class BasicClass
extends AbstractClass
implements DefinitionConst


Field Summary
(package private)  QualifiedIdentifier className
           
(package private)  JintClassTable classTable
           
(package private)  java.lang.String descriptor
           
(package private)  AbstractClass[] inner
           
(package private)  AbstractClass[] interfaces
           
(package private)  java.util.Hashtable members
           
(package private)  int modifiers
           
(package private)  java.lang.String name
           
(package private)  AbstractClass outer
           
(package private)  AbstractField outerField
           
(package private)  QualifiedIdentifier packageName
           
(package private)  AbstractClass superclass
           
 
Fields inherited from class kmy.jint.reflect.AbstractClass
ARGLIST_INDEX, FIELD_INDEX, jvmName, METHOD_INDEX, VARIABLE
 
Fields inherited from interface kmy.jint.constants.DefinitionConst
ABSTRACT_FLAG, ACC_ABSTRACT, ACC_FINAL, ACC_INTERFACE, ACC_MASK, ACC_NATIVE, ACC_PRIVATE, ACC_PROTECTED, ACC_PUBLIC, ACC_STATIC, ACC_SUPER, ACC_SYNCHRONIZED, ACC_TRANSIENT, ACC_VOLATILE, CONST_FLAG, EXPLICIT_FLAG, FINAL_FLAG, INTERFACE_FLAG, METHOD_SCOPE_FLAG, MUST_BE_CLASS_FLAG, NATIVE_FLAG, PACKAGE_PRIVATE_FLAG, PRIVATE_FLAG, PROTECTED_FLAG, PUBLIC_FLAG, SCRIPT_STYLE_FLAG, SELF_USED_FLAG, STATIC_FLAG, STRICT_FLAG, SYNCHRONIZED_FLAG, TRANSIENT_FLAG, VOLATILE_FLAG, WHERE_FLAG, WORLD_FLAG
 
Constructor Summary
BasicClass(JintClassTable ct, QualifiedIdentifier className, AbstractClass outer)
           
 
Method Summary
(package private)  void addMember(Identifier name, java.lang.Object member, int nparams)
           
(package private)  void doneAdding()
           
 void dumpMethods(Identifier name)
           
 JintClassTable getClassTable()
           
 java.lang.String getDescriptor()
           
 AbstractField getField(Identifier name)
           
 AbstractField[] getFields()
           
 QualifiedIdentifier getFullName()
           
 AbstractClass[] getImplementedInterfaces()
           
 AbstractClass[] getInnerClasses()
           
 AbstractClass getLexicallyOuter()
           
 java.util.Enumeration getMethods(Identifier name, int nparam)
           
 int getModifiers()
           
 java.lang.String getName()
           
 AbstractClass getOuter()
           
 AbstractField getOuterField()
           
 QualifiedIdentifier getPackage()
           
 AbstractClass getSuperclass()
           
protected  void initDescriptor()
           
 boolean isInterface()
           
 boolean isPrimitive()
           
 boolean isSubclassOf(AbstractClass cls)
           
 
Methods inherited from class kmy.jint.reflect.AbstractClass
getDimension, getElementClass, getImportCache, getJVMName, getNCells, isWorld, toString
 
Methods inherited from class java.lang.Object
, clone, equals, finalize, getClass, hashCode, notify, notifyAll, registerNatives, wait, wait, wait
 

Field Detail

classTable

JintClassTable classTable

className

QualifiedIdentifier className

packageName

QualifiedIdentifier packageName

modifiers

int modifiers

descriptor

java.lang.String descriptor

name

java.lang.String name

members

java.util.Hashtable members

superclass

AbstractClass superclass

interfaces

AbstractClass[] interfaces

inner

AbstractClass[] inner

outer

AbstractClass outer

outerField

AbstractField outerField
Constructor Detail

BasicClass

public BasicClass(JintClassTable ct,
                  QualifiedIdentifier className,
                  AbstractClass outer)
Method Detail

getPackage

public QualifiedIdentifier getPackage()
Overrides:
getPackage in class AbstractClass

initDescriptor

protected void initDescriptor()

getName

public java.lang.String getName()
Overrides:
getName in class AbstractClass

getFullName

public QualifiedIdentifier getFullName()
Overrides:
getFullName in class AbstractClass

getModifiers

public int getModifiers()
Overrides:
getModifiers in class AbstractClass

getField

public AbstractField getField(Identifier name)
Overrides:
getField in class AbstractClass

getFields

public AbstractField[] getFields()

getMethods

public java.util.Enumeration getMethods(Identifier name,
                                        int nparam)
Overrides:
getMethods in class AbstractClass

getInnerClasses

public AbstractClass[] getInnerClasses()
Overrides:
getInnerClasses in class AbstractClass

getImplementedInterfaces

public AbstractClass[] getImplementedInterfaces()
Overrides:
getImplementedInterfaces in class AbstractClass

getSuperclass

public AbstractClass getSuperclass()
Overrides:
getSuperclass in class AbstractClass

isSubclassOf

public boolean isSubclassOf(AbstractClass cls)
Overrides:
isSubclassOf in class AbstractClass

isInterface

public boolean isInterface()
Overrides:
isInterface in class AbstractClass

isPrimitive

public boolean isPrimitive()
Overrides:
isPrimitive in class AbstractClass

getDescriptor

public java.lang.String getDescriptor()
Overrides:
getDescriptor in class AbstractClass

getClassTable

public JintClassTable getClassTable()
Overrides:
getClassTable in class AbstractClass

getOuterField

public AbstractField getOuterField()
Overrides:
getOuterField in class AbstractClass

getOuter

public AbstractClass getOuter()
Overrides:
getOuter in class AbstractClass

getLexicallyOuter

public AbstractClass getLexicallyOuter()
Overrides:
getLexicallyOuter in class AbstractClass

doneAdding

void doneAdding()

dumpMethods

public void dumpMethods(Identifier name)

addMember

void addMember(Identifier name,
               java.lang.Object member,
               int nparams)