joeq.Class
Class jq_Class

java.lang.Object
  extended by joeq.Class.jq_Type
      extended by joeq.Class.jq_Reference
          extended by joeq.Class.jq_Class
All Implemented Interfaces:
jq_ClassFileConstants, CompilationConstants, jwutil.io.Textualizable

public final class jq_Class
extends jq_Reference
implements jq_ClassFileConstants, CompilationConstants

jq_Class

Version:
$Id: jq_Class.java 2465 2006-06-07 23:03:17Z joewhaley $
Author:
John Whaley

Nested Class Summary
 class jq_Class.StringConstant
           
 
Nested classes/interfaces inherited from class joeq.Class.jq_Reference
jq_Reference.jq_NullType
 
Field Summary
static jq_Class _class
           
static List classToReplace
           
static boolean DETERMINISTIC
           
static int NumOfIFieldsEliminated
           
static int NumOfIFieldsKept
           
static int NumOfIMethodsEliminated
           
static int NumOfIMethodsKept
           
static int NumOfSFieldsEliminated
           
static int NumOfSFieldsKept
           
static int NumOfSMethodsEliminated
           
static int NumOfSMethodsKept
           
static boolean REPLACE_CLASS
           
static boolean TRACE
           
static boolean TRACE_REPLACE_CLASS
           
static boolean WARN_STALE_CLASS_FILES
           
 
Fields inherited from class joeq.Class.jq_Reference
_state, _vtable, class_loader, state, vtable
 
Fields inherited from class joeq.Class.jq_Type
desc, display, DISPLAY_SIZE, offset, s_s_array, s_s_array_length, USE_CLASS_OBJECT_FIELD
 
Fields inherited from interface joeq.Class.jq_ClassFileConstants
ACC_ABSTRACT, ACC_FINAL, ACC_INTERFACE, ACC_NATIVE, ACC_PRIVATE, ACC_PROTECTED, ACC_PUBLIC, ACC_STATIC, ACC_STRICT, ACC_SUPER, ACC_SYNCHRONIZED, ACC_TRANSIENT, ACC_VOLATILE, CONSTANT_Class, CONSTANT_Double, CONSTANT_FieldRef, CONSTANT_Float, CONSTANT_Integer, CONSTANT_InterfaceMethodRef, CONSTANT_Long, CONSTANT_MethodRef, CONSTANT_NameAndType, CONSTANT_ResolvedClass, CONSTANT_ResolvedIFieldRef, CONSTANT_ResolvedIMethodRef, CONSTANT_ResolvedSFieldRef, CONSTANT_ResolvedSMethodRef, CONSTANT_String, CONSTANT_Utf8, CONSUME_STACK, ILLEGAL_OPCODE, ILLEGAL_TYPE, jbc_AALOAD, jbc_AASTORE, jbc_ACONST_NULL, jbc_ALOAD, jbc_ALOAD_0, jbc_ALOAD_1, jbc_ALOAD_2, jbc_ALOAD_3, jbc_ANEWARRAY, jbc_ARETURN, jbc_ARRAYLENGTH, jbc_ASTORE, jbc_ASTORE_0, jbc_ASTORE_1, jbc_ASTORE_2, jbc_ASTORE_3, jbc_ATHROW, jbc_BALOAD, jbc_BASTORE, jbc_BIPUSH, jbc_BREAKPOINT, jbc_CALOAD, jbc_CASTORE, jbc_CHECKCAST, jbc_D2F, jbc_D2I, jbc_D2L, jbc_DADD, jbc_DALOAD, jbc_DASTORE, jbc_DCMPG, jbc_DCMPL, jbc_DCONST_0, jbc_DCONST_1, jbc_DDIV, jbc_DLOAD, jbc_DLOAD_0, jbc_DLOAD_1, jbc_DLOAD_2, jbc_DLOAD_3, jbc_DMUL, jbc_DNEG, jbc_DREM, jbc_DRETURN, jbc_DSTORE, jbc_DSTORE_0, jbc_DSTORE_1, jbc_DSTORE_2, jbc_DSTORE_3, jbc_DSUB, jbc_DUP, jbc_DUP_X1, jbc_DUP_X2, jbc_DUP2, jbc_DUP2_X1, jbc_DUP2_X2, jbc_F2D, jbc_F2I, jbc_F2L, jbc_FADD, jbc_FALOAD, jbc_FASTORE, jbc_FCMPG, jbc_FCMPL, jbc_FCONST_0, jbc_FCONST_1, jbc_FCONST_2, jbc_FDIV, jbc_FLOAD, jbc_FLOAD_0, jbc_FLOAD_1, jbc_FLOAD_2, jbc_FLOAD_3, jbc_FMUL, jbc_FNEG, jbc_FREM, jbc_FRETURN, jbc_FSTORE, jbc_FSTORE_0, jbc_FSTORE_1, jbc_FSTORE_2, jbc_FSTORE_3, jbc_FSUB, jbc_GETFIELD, jbc_GETSTATIC, jbc_GOTO, jbc_GOTO_W, jbc_I2B, jbc_I2C, jbc_I2D, jbc_I2F, jbc_I2L, jbc_I2S, jbc_IADD, jbc_IALOAD, jbc_IAND, jbc_IASTORE, jbc_ICONST_0, jbc_ICONST_1, jbc_ICONST_2, jbc_ICONST_3, jbc_ICONST_4, jbc_ICONST_5, jbc_ICONST_M1, jbc_IDIV, jbc_IF_ACMPEQ, jbc_IF_ACMPNE, jbc_IF_ICMPEQ, jbc_IF_ICMPGE, jbc_IF_ICMPGT, jbc_IF_ICMPLE, jbc_IF_ICMPLT, jbc_IF_ICMPNE, jbc_IFEQ, jbc_IFGE, jbc_IFGT, jbc_IFLE, jbc_IFLT, jbc_IFNE, jbc_IFNONNULL, jbc_IFNULL, jbc_IINC, jbc_ILOAD, jbc_ILOAD_0, jbc_ILOAD_1, jbc_ILOAD_2, jbc_ILOAD_3, jbc_IMUL, jbc_INEG, jbc_INSTANCEOF, jbc_INT2BYTE, jbc_INT2CHAR, jbc_INT2SHORT, jbc_INVOKEINTERFACE, jbc_INVOKENONVIRTUAL, jbc_INVOKESPECIAL, jbc_INVOKESTATIC, jbc_INVOKEVIRTUAL, jbc_IOR, jbc_IREM, jbc_IRETURN, jbc_ISHL, jbc_ISHR, jbc_ISTORE, jbc_ISTORE_0, jbc_ISTORE_1, jbc_ISTORE_2, jbc_ISTORE_3, jbc_ISUB, jbc_IUSHR, jbc_IXOR, jbc_JSR, jbc_JSR_W, jbc_L2D, jbc_L2F, jbc_L2I, jbc_LADD, jbc_LALOAD, jbc_LAND, jbc_LASTORE, jbc_LCMP, jbc_LCONST_0, jbc_LCONST_1, jbc_LDC, jbc_LDC_W, jbc_LDC2_W, jbc_LDIV, jbc_LLOAD, jbc_LLOAD_0, jbc_LLOAD_1, jbc_LLOAD_2, jbc_LLOAD_3, jbc_LMUL, jbc_LNEG, jbc_LOOKUPSWITCH, jbc_LOR, jbc_LREM, jbc_LRETURN, jbc_LSHL, jbc_LSHR, jbc_LSTORE, jbc_LSTORE_0, jbc_LSTORE_1, jbc_LSTORE_2, jbc_LSTORE_3, jbc_LSUB, jbc_LUSHR, jbc_LXOR, jbc_MONITORENTER, jbc_MONITOREXIT, jbc_MULTIANEWARRAY, jbc_NEW, jbc_NEWARRAY, jbc_NOP, jbc_POP, jbc_POP2, jbc_PUTFIELD, jbc_PUTSTATIC, jbc_RET, jbc_RETURN, jbc_SALOAD, jbc_SASTORE, jbc_SIPUSH, jbc_SWAP, jbc_TABLESWITCH, jbc_WIDE, NO_OF_OPERANDS, OPCODE_NAMES, PRODUCE_STACK, RESERVED, STATE_CLSINITERROR, STATE_CLSINITIALIZED, STATE_CLSINITIALIZING, STATE_CLSINITRUNNING, STATE_COMPILED, STATE_COMPILING, STATE_LOADED, STATE_LOADERROR, STATE_LOADING1, STATE_LOADING2, STATE_LOADING3, STATE_PREPARED, STATE_PREPAREERROR, STATE_PREPARING, STATE_SFINITERROR, STATE_SFINITIALIZED, STATE_SFINITIALIZING, STATE_UNLOADED, STATE_VERIFIED, STATE_VERIFYERROR, STATE_VERIFYING, T_BOOLEAN, T_BYTE, T_CHAR, T_DOUBLE, T_FLOAT, T_INT, T_LONG, T_SHORT, TC_ARRAY, TC_BOOLEAN, TC_BYTE, TC_CHAR, TC_CLASS, TC_CLASSEND, TC_DOUBLE, TC_FLOAT, TC_INT, TC_LONG, TC_PARAM, TC_PARAMEND, TC_SHORT, TC_VOID, TYPE_OF_OPERANDS, UNDEFINED, UNPREDICTABLE
 
Fields inherited from interface joeq.Compiler.CompilationConstants
MAYBE, NO, YES
 
Method Summary
 void accept(jq_TypeVisitor tv)
           
static String className(Utf8 desc)
           
 void cls_initialize()
           
 void compile()
           
 boolean doesConstantPoolContain(Object o)
           
 void dump(DataOutput out)
           
 jq_Class.StringConstant findStringConstant(String s)
           
 jq_InstanceMethod generateInstanceMethodStub(jq_NameAndDesc nd, jq_StaticMethod m, char access_flags, char method_idx)
           
 jq_StaticMethod generateStaticMethodStub(jq_NameAndDesc nd, jq_StaticMethod m, char access_flags, char classfield_idx, char method_idx)
           
 char getAccessFlags()
           
 byte[] getAttribute(String name)
           
 byte[] getAttribute(Utf8 name)
           
 Iterator getAttributes()
           
 jq_ClassInitializer getClassInitializer()
           
 jq_ConstantPool getCP()
           
 Object getCP(char index)
           
 Double getCPasDouble(char index)
           
 Float getCPasFloat(char index)
           
 jq_InstanceField getCPasInstanceField(char index)
           
 jq_InstanceMethod getCPasInstanceMethod(char index)
           
 Integer getCPasInt(char index)
           
 Long getCPasLong(char index)
           
 jq_Member getCPasMember(char index)
           
 Object getCPasObjectConstant(char index)
           
 jq_StaticField getCPasStaticField(char index)
           
 jq_StaticMethod getCPasStaticMethod(char index)
           
 String getCPasString(char index)
           
 jq_Type getCPasType(char index)
           
 Utf8 getCPasUtf8(char index)
           
 int getCPCount()
           
 byte getCPtag(char index)
           
 jq_Field getDeclaredField(String name)
           
 jq_Field getDeclaredField(Utf8 name)
           
 jq_InstanceField getDeclaredInstanceField(jq_NameAndDesc nd)
           
 jq_InstanceField[] getDeclaredInstanceFields()
           
 jq_InstanceMethod getDeclaredInstanceMethod(jq_NameAndDesc nd)
           
 jq_InstanceMethod[] getDeclaredInstanceMethods()
           
 jq_Class getDeclaredInterface(Utf8 desc)
           
 jq_Class[] getDeclaredInterfaces()
           
 jq_Member getDeclaredMember(jq_NameAndDesc nd)
           
 jq_Member getDeclaredMember(String name, String desc)
           
 jq_Method getDeclaredMethod(String name)
           
 jq_Method getDeclaredMethod(Utf8 name)
           
 jq_StaticField getDeclaredStaticField(jq_NameAndDesc nd)
           
 jq_StaticField[] getDeclaredStaticFields()
           
 jq_StaticMethod getDeclaredStaticMethod(jq_NameAndDesc nd)
           
 jq_StaticMethod[] getDeclaredStaticMethods()
           
 int getDepth()
           
 jq_Reference getDirectPrimarySupertype()
           
 jq_Initializer getInitializer(jq_NameAndDesc nd)
           
 jq_Initializer getInitializer(Utf8 desc)
           
 jq_Class[] getInnerClasses()
           
 jq_InstanceField getInstanceField(jq_NameAndDesc nd)
           
 jq_InstanceField[] getInstanceFields()
           
 jq_InstanceMethod getInstanceMethod(jq_NameAndDesc nd)
           
 int getInstanceSize()
           
 jq_Class getInterface(Utf8 desc)
           
 jq_Class[] getInterfaces()
           
static jq_InstanceMethod getInvokespecialTarget(jq_Class clazz, jq_InstanceMethod method)
           
 String getJDKDesc()
           
 String getJDKName()
           
 int getMajorVersion()
           
 Collection getMembers()
           
 jq_Method getMethodContainingLine(char lineNum)
           
 int getMinorVersion()
           
 String getName()
           
 int getNumberOfStaticFields()
           
 int getNumberOfStaticMethods()
           
 jq_InstanceField getOrCreateInstanceField(jq_NameAndDesc nd)
           
 jq_InstanceField getOrCreateInstanceField(String name, String desc)
           
 jq_InstanceMethod getOrCreateInstanceMethod(jq_NameAndDesc nd)
           
 jq_InstanceMethod getOrCreateInstanceMethod(String name, String desc)
           
 jq_StaticField getOrCreateStaticField(jq_NameAndDesc nd)
           
 jq_StaticField getOrCreateStaticField(String name, String desc)
           
 jq_StaticMethod getOrCreateStaticMethod(jq_NameAndDesc nd)
           
 jq_StaticMethod getOrCreateStaticMethod(String name, String desc)
           
 int[] getReferenceOffsets()
           
 Utf8 getSourceFile()
           
 int[] getStaticData()
           
 jq_StaticField getStaticField(jq_NameAndDesc nd)
           
 jq_StaticField[] getStaticFields()
           
 jq_StaticMethod getStaticMethod(jq_NameAndDesc nd)
           
 jq_StaticMethod[] getStaticMethods()
           
 jq_Class[] getSubClasses()
           
 jq_Class[] getSubInterfaces()
           
 jq_Class getSuperclass()
           
 jq_InstanceMethod getVirtualMethod(jq_NameAndDesc nd)
           
 jq_InstanceMethod[] getVirtualMethods()
           
 int hashCode()
           
 boolean implementsInterface(jq_Class k)
           
 boolean isAbstract()
           
 boolean isAddressType()
           
 boolean isArrayType()
           
 boolean isClassType()
          INTERFACE
 boolean isDeprecated()
           
 boolean isFinal()
           
 boolean isInClassLib()
           
 boolean isInSamePackage(jq_Class that)
           
 boolean isInterface()
           
 boolean isPublic()
           
 boolean isSpecial()
           
 boolean isSynthetic()
           
 void load()
          Loads the binary data for this class.
 void load(DataInput in)
           
 void merge_old(jq_Class that)
           
 void merge(jq_Class that)
           
static jq_Class newClass(ClassLoader classLoader, Utf8 desc)
           
 Object newInstance()
           
 void prepare()
           
static jq_Class.StringConstant readStringConstant(StringTokenizer st)
           
 jq_ConstantPool.ConstantPoolRebuilder rebuildConstantPool(boolean addCode)
           
 void remakeAttributes(jq_ConstantPool.ConstantPoolRebuilder cpr)
           
 void removeAttribute(String s)
           
 void removeAttribute(Utf8 u)
           
 void setCP(jq_ConstantPool cp)
           
 void setDeclaredInstanceFields(jq_InstanceField[] dif)
           
 void setDeclaredInstanceMethods(jq_InstanceMethod[] dim)
           
 void setDeclaredStaticFields(jq_StaticField[] dsf)
           
 void setDeclaredStaticMethods(jq_StaticMethod[] dsm)
           
 void setStaticData(jq_StaticField sf, Address data)
           
 void setStaticData(jq_StaticField sf, double data)
           
 void setStaticData(jq_StaticField sf, float data)
           
 void setStaticData(jq_StaticField sf, int data)
           
 void setStaticData(jq_StaticField sf, long data)
           
 void setStaticData(jq_StaticField sf, Object data)
           
 void sf_initialize()
           
 String shortName()
           
 void verify()
           
 
Methods inherited from class joeq.Class.jq_Reference
chkState, getClassLoader, getReferenceSize, getState, getTypeOf, getVTable, isClsInitialized, isClsInitRunning, isCompiled, isInstance, isIntLike, isLoaded, isPrepared, isPrimitiveType, isSFInitialized, isVerified
 
Methods inherited from class joeq.Class.jq_Type
addEdge, convertPrimitive, getArrayTypeForElementType, getDesc, getJavaLangClassObject, isReferenceType, isSubtypeOf, needsDynamicLink, parseType, read, toString, write, writeEdges
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Field Detail

TRACE

public static boolean TRACE

WARN_STALE_CLASS_FILES

public static boolean WARN_STALE_CLASS_FILES

REPLACE_CLASS

public static boolean REPLACE_CLASS

TRACE_REPLACE_CLASS

public static boolean TRACE_REPLACE_CLASS

classToReplace

public static List classToReplace

DETERMINISTIC

public static final boolean DETERMINISTIC
See Also:
Constant Field Values

NumOfIFieldsKept

public static int NumOfIFieldsKept

NumOfSFieldsKept

public static int NumOfSFieldsKept

NumOfIMethodsKept

public static int NumOfIMethodsKept

NumOfSMethodsKept

public static int NumOfSMethodsKept

NumOfIFieldsEliminated

public static int NumOfIFieldsEliminated

NumOfSFieldsEliminated

public static int NumOfSFieldsEliminated

NumOfIMethodsEliminated

public static int NumOfIMethodsEliminated

NumOfSMethodsEliminated

public static int NumOfSMethodsEliminated

_class

public static final jq_Class _class
Method Detail

isClassType

public final boolean isClassType()
INTERFACE

Specified by:
isClassType in class jq_Type

isArrayType

public final boolean isArrayType()
Specified by:
isArrayType in class jq_Type

isAddressType

public final boolean isAddressType()
Specified by:
isAddressType in class jq_Type

getName

public final String getName()
Specified by:
getName in class jq_Type

shortName

public final String shortName()
Specified by:
shortName in class jq_Type

isInSamePackage

public final boolean isInSamePackage(jq_Class that)

getJDKName

public final String getJDKName()
Specified by:
getJDKName in class jq_Reference

getJDKDesc

public final String getJDKDesc()
Specified by:
getJDKDesc in class jq_Type

getDeclaredMember

public jq_Member getDeclaredMember(jq_NameAndDesc nd)

getDeclaredMember

public jq_Member getDeclaredMember(String name,
                                   String desc)

getMembers

public Collection getMembers()

accept

public void accept(jq_TypeVisitor tv)
Overrides:
accept in class jq_Type

hashCode

public int hashCode()
Overrides:
hashCode in class Object

getMinorVersion

public final int getMinorVersion()

getMajorVersion

public final int getMajorVersion()

getAccessFlags

public final char getAccessFlags()

isPublic

public final boolean isPublic()

isFinal

public final boolean isFinal()
Specified by:
isFinal in class jq_Type

isSpecial

public final boolean isSpecial()

isInterface

public final boolean isInterface()

isAbstract

public final boolean isAbstract()

getSuperclass

public final jq_Class getSuperclass()

getDepth

public final int getDepth()
Specified by:
getDepth in class jq_Type

getDirectPrimarySupertype

public final jq_Reference getDirectPrimarySupertype()
Specified by:
getDirectPrimarySupertype in class jq_Reference

getDeclaredInterfaces

public final jq_Class[] getDeclaredInterfaces()

getDeclaredInterface

public final jq_Class getDeclaredInterface(Utf8 desc)

getDeclaredInstanceFields

public final jq_InstanceField[] getDeclaredInstanceFields()

getDeclaredInstanceField

public final jq_InstanceField getDeclaredInstanceField(jq_NameAndDesc nd)

setDeclaredInstanceFields

public final void setDeclaredInstanceFields(jq_InstanceField[] dif)

getDeclaredStaticFields

public final jq_StaticField[] getDeclaredStaticFields()

getDeclaredStaticField

public final jq_StaticField getDeclaredStaticField(jq_NameAndDesc nd)

setDeclaredStaticFields

public final void setDeclaredStaticFields(jq_StaticField[] dsf)

getStaticField

public final jq_StaticField getStaticField(jq_NameAndDesc nd)

getNumberOfStaticFields

public final int getNumberOfStaticFields()

getStaticFields

public final jq_StaticField[] getStaticFields()

getDeclaredInstanceMethods

public final jq_InstanceMethod[] getDeclaredInstanceMethods()

getDeclaredInstanceMethod

public final jq_InstanceMethod getDeclaredInstanceMethod(jq_NameAndDesc nd)

setDeclaredInstanceMethods

public final void setDeclaredInstanceMethods(jq_InstanceMethod[] dim)

getDeclaredStaticMethods

public final jq_StaticMethod[] getDeclaredStaticMethods()

getDeclaredStaticMethod

public final jq_StaticMethod getDeclaredStaticMethod(jq_NameAndDesc nd)

setDeclaredStaticMethods

public final void setDeclaredStaticMethods(jq_StaticMethod[] dsm)

getStaticMethod

public final jq_StaticMethod getStaticMethod(jq_NameAndDesc nd)

getNumberOfStaticMethods

public final int getNumberOfStaticMethods()

getStaticMethods

public final jq_StaticMethod[] getStaticMethods()

getInstanceMethod

public final jq_InstanceMethod getInstanceMethod(jq_NameAndDesc nd)

getInitializer

public final jq_Initializer getInitializer(Utf8 desc)

getInitializer

public final jq_Initializer getInitializer(jq_NameAndDesc nd)

getClassInitializer

public final jq_ClassInitializer getClassInitializer()

getDeclaredField

public jq_Field getDeclaredField(String name)

getDeclaredField

public jq_Field getDeclaredField(Utf8 name)

getDeclaredMethod

public jq_Method getDeclaredMethod(String name)

getDeclaredMethod

public jq_Method getDeclaredMethod(Utf8 name)

getMethodContainingLine

public jq_Method getMethodContainingLine(char lineNum)

getCP

public final jq_ConstantPool getCP()

setCP

public final void setCP(jq_ConstantPool cp)

getCP

public final Object getCP(char index)

getCPCount

public final int getCPCount()

getCPtag

public final byte getCPtag(char index)

getCPasInt

public final Integer getCPasInt(char index)

getCPasFloat

public final Float getCPasFloat(char index)

getCPasLong

public final Long getCPasLong(char index)

getCPasDouble

public final Double getCPasDouble(char index)

getCPasString

public final String getCPasString(char index)

getCPasObjectConstant

public final Object getCPasObjectConstant(char index)

getCPasUtf8

public final Utf8 getCPasUtf8(char index)

getCPasType

public final jq_Type getCPasType(char index)

getCPasMember

public final jq_Member getCPasMember(char index)

getOrCreateStaticField

public jq_StaticField getOrCreateStaticField(String name,
                                             String desc)

getOrCreateStaticField

public jq_StaticField getOrCreateStaticField(jq_NameAndDesc nd)

getCPasStaticField

public final jq_StaticField getCPasStaticField(char index)

getOrCreateInstanceField

public jq_InstanceField getOrCreateInstanceField(String name,
                                                 String desc)

getOrCreateInstanceField

public jq_InstanceField getOrCreateInstanceField(jq_NameAndDesc nd)

getCPasInstanceField

public final jq_InstanceField getCPasInstanceField(char index)

getOrCreateStaticMethod

public jq_StaticMethod getOrCreateStaticMethod(String name,
                                               String desc)

getOrCreateStaticMethod

public jq_StaticMethod getOrCreateStaticMethod(jq_NameAndDesc nd)

getCPasStaticMethod

public final jq_StaticMethod getCPasStaticMethod(char index)

getOrCreateInstanceMethod

public jq_InstanceMethod getOrCreateInstanceMethod(String name,
                                                   String desc)

getOrCreateInstanceMethod

public jq_InstanceMethod getOrCreateInstanceMethod(jq_NameAndDesc nd)

getCPasInstanceMethod

public final jq_InstanceMethod getCPasInstanceMethod(char index)

getAttribute

public final byte[] getAttribute(Utf8 name)

getAttribute

public final byte[] getAttribute(String name)

getAttributes

public final Iterator getAttributes()

getSourceFile

public final Utf8 getSourceFile()

isSynthetic

public final boolean isSynthetic()

isDeprecated

public final boolean isDeprecated()

removeAttribute

public final void removeAttribute(String s)

removeAttribute

public final void removeAttribute(Utf8 u)

getInnerClasses

public final jq_Class[] getInnerClasses()

getSubClasses

public final jq_Class[] getSubClasses()

getSubInterfaces

public final jq_Class[] getSubInterfaces()

getInterfaces

public final jq_Class[] getInterfaces()
Specified by:
getInterfaces in class jq_Reference

getInterface

public final jq_Class getInterface(Utf8 desc)
Specified by:
getInterface in class jq_Reference

implementsInterface

public final boolean implementsInterface(jq_Class k)
Specified by:
implementsInterface in class jq_Reference

getInstanceFields

public final jq_InstanceField[] getInstanceFields()

getReferenceOffsets

public final int[] getReferenceOffsets()

getInstanceField

public final jq_InstanceField getInstanceField(jq_NameAndDesc nd)

getVirtualMethods

public final jq_InstanceMethod[] getVirtualMethods()

getVirtualMethod

public final jq_InstanceMethod getVirtualMethod(jq_NameAndDesc nd)
Specified by:
getVirtualMethod in class jq_Reference

getInstanceSize

public final int getInstanceSize()

getStaticData

public final int[] getStaticData()

setStaticData

public final void setStaticData(jq_StaticField sf,
                                int data)

setStaticData

public final void setStaticData(jq_StaticField sf,
                                long data)

setStaticData

public final void setStaticData(jq_StaticField sf,
                                float data)

setStaticData

public final void setStaticData(jq_StaticField sf,
                                double data)

setStaticData

public final void setStaticData(jq_StaticField sf,
                                Object data)

setStaticData

public final void setStaticData(jq_StaticField sf,
                                Address data)

newInstance

public final Object newInstance()

newClass

public static jq_Class newClass(ClassLoader classLoader,
                                Utf8 desc)

load

public void load()
          throws ClassFormatError,
                 UnsupportedClassVersionError,
                 ClassCircularityError,
                 NoClassDefFoundError
Loads the binary data for this class. See Jvm spec 2.17.2. Throws: ClassFormatError if the binary data is malformed in some way UnsupportedClassVersionError if the binary data is of an unsupported version ClassCircularityError if it would be its own superclass or superinterface NoClassDefFoundError if the class definition cannot be found

Specified by:
load in class jq_Type
Throws:
ClassFormatError
UnsupportedClassVersionError
ClassCircularityError
NoClassDefFoundError

load

public void load(DataInput in)
          throws ClassFormatError,
                 UnsupportedClassVersionError,
                 ClassCircularityError
Throws:
ClassFormatError
UnsupportedClassVersionError
ClassCircularityError

isInClassLib

public boolean isInClassLib()

doesConstantPoolContain

public boolean doesConstantPoolContain(Object o)

generateStaticMethodStub

public jq_StaticMethod generateStaticMethodStub(jq_NameAndDesc nd,
                                                jq_StaticMethod m,
                                                char access_flags,
                                                char classfield_idx,
                                                char method_idx)

generateInstanceMethodStub

public jq_InstanceMethod generateInstanceMethodStub(jq_NameAndDesc nd,
                                                    jq_StaticMethod m,
                                                    char access_flags,
                                                    char method_idx)

merge

public void merge(jq_Class that)

remakeAttributes

public void remakeAttributes(jq_ConstantPool.ConstantPoolRebuilder cpr)

merge_old

public void merge_old(jq_Class that)

verify

public void verify()
Specified by:
verify in class jq_Type

prepare

public void prepare()
Specified by:
prepare in class jq_Type

sf_initialize

public void sf_initialize()
Specified by:
sf_initialize in class jq_Type

compile

public void compile()
Specified by:
compile in class jq_Type

cls_initialize

public void cls_initialize()
                    throws ExceptionInInitializerError,
                           NoClassDefFoundError
Specified by:
cls_initialize in class jq_Type
Throws:
ExceptionInInitializerError
NoClassDefFoundError

className

public static String className(Utf8 desc)

getInvokespecialTarget

public static jq_InstanceMethod getInvokespecialTarget(jq_Class clazz,
                                                       jq_InstanceMethod method)
                                                throws AbstractMethodError
Throws:
AbstractMethodError

rebuildConstantPool

public jq_ConstantPool.ConstantPoolRebuilder rebuildConstantPool(boolean addCode)

dump

public void dump(DataOutput out)
          throws IOException
Throws:
IOException

findStringConstant

public jq_Class.StringConstant findStringConstant(String s)

readStringConstant

public static jq_Class.StringConstant readStringConstant(StringTokenizer st)


Copyright © 2001-2008 John Whaley. All Rights Reserved.