Class CodeAttribute
java.lang.Object
com.sun.jdo.api.persistence.enhancer.classfile.ClassAttribute
com.sun.jdo.api.persistence.enhancer.classfile.CodeAttribute
- All Implemented Interfaces:
VMConstants
Subtype of ClassAttribute which describes the "Code" attribute
associated with a method.
-
Field Summary
FieldsFields inherited from interface com.sun.jdo.api.persistence.enhancer.classfile.VMConstants
ACCAbstract, ACCFinal, ACCInterface, ACCNative, ACCPrivate, ACCProtected, ACCPublic, ACCStatic, ACCSuper, ACCSynchronized, ACCTransient, ACCVolatile, CONSTANTClass, CONSTANTDouble, CONSTANTFieldRef, CONSTANTFloat, CONSTANTInteger, CONSTANTInterfaceMethodRef, CONSTANTLong, CONSTANTMethodRef, CONSTANTNameAndType, CONSTANTString, CONSTANTUnicode, CONSTANTUtf8, opc_aaload, opc_aastore, opc_aconst_null, opc_aload, opc_aload_0, opc_aload_1, opc_aload_2, opc_aload_3, opc_anewarray, opc_areturn, opc_arraylength, opc_astore, opc_astore_0, opc_astore_1, opc_astore_2, opc_astore_3, opc_athrow, opc_baload, opc_bastore, opc_bipush, opc_caload, opc_castore, opc_checkcast, opc_d2f, opc_d2i, opc_d2l, opc_dadd, opc_daload, opc_dastore, opc_dcmpg, opc_dcmpl, opc_dconst_0, opc_dconst_1, opc_ddiv, opc_dload, opc_dload_0, opc_dload_1, opc_dload_2, opc_dload_3, opc_dmul, opc_dneg, opc_drem, opc_dreturn, opc_dstore, opc_dstore_0, opc_dstore_1, opc_dstore_2, opc_dstore_3, opc_dsub, opc_dup, opc_dup_x1, opc_dup_x2, opc_dup2, opc_dup2_x1, opc_dup2_x2, opc_f2d, opc_f2i, opc_f2l, opc_fadd, opc_faload, opc_fastore, opc_fcmpg, opc_fcmpl, opc_fconst_0, opc_fconst_1, opc_fconst_2, opc_fdiv, opc_fload, opc_fload_0, opc_fload_1, opc_fload_2, opc_fload_3, opc_fmul, opc_fneg, opc_frem, opc_freturn, opc_fstore, opc_fstore_0, opc_fstore_1, opc_fstore_2, opc_fstore_3, opc_fsub, opc_getfield, opc_getstatic, opc_goto, opc_goto_w, opc_i2b, opc_i2c, opc_i2d, opc_i2f, opc_i2l, opc_i2s, opc_iadd, opc_iaload, opc_iand, opc_iastore, opc_iconst_0, opc_iconst_1, opc_iconst_2, opc_iconst_3, opc_iconst_4, opc_iconst_5, opc_iconst_m1, opc_idiv, opc_if_acmpeq, opc_if_acmpne, opc_if_icmpeq, opc_if_icmpge, opc_if_icmpgt, opc_if_icmple, opc_if_icmplt, opc_if_icmpne, opc_ifeq, opc_ifge, opc_ifgt, opc_ifle, opc_iflt, opc_ifne, opc_ifnonnull, opc_ifnull, opc_iinc, opc_iload, opc_iload_0, opc_iload_1, opc_iload_2, opc_iload_3, opc_imul, opc_ineg, opc_instanceof, opc_invokeinterface, opc_invokespecial, opc_invokestatic, opc_invokevirtual, opc_ior, opc_irem, opc_ireturn, opc_ishl, opc_ishr, opc_istore, opc_istore_0, opc_istore_1, opc_istore_2, opc_istore_3, opc_isub, opc_iushr, opc_ixor, opc_jsr, opc_jsr_w, opc_l2d, opc_l2f, opc_l2i, opc_ladd, opc_laload, opc_land, opc_lastore, opc_lcmp, opc_lconst_0, opc_lconst_1, opc_ldc, opc_ldc_w, opc_ldc2_w, opc_ldiv, opc_lload, opc_lload_0, opc_lload_1, opc_lload_2, opc_lload_3, opc_lmul, opc_lneg, opc_lookupswitch, opc_lor, opc_lrem, opc_lreturn, opc_lshl, opc_lshr, opc_lstore, opc_lstore_0, opc_lstore_1, opc_lstore_2, opc_lstore_3, opc_lsub, opc_lushr, opc_lxor, opc_monitorenter, opc_monitorexit, opc_multianewarray, opc_new, opc_newarray, opc_nop, opc_pop, opc_pop2, opc_putfield, opc_putstatic, opc_ret, opc_return, opc_saload, opc_sastore, opc_sipush, opc_swap, opc_tableswitch, opc_wide, opc_xxxunusedxxx, T_BOOLEAN, T_BYTE, T_CHAR, T_DOUBLE, T_FLOAT, T_INT, T_LONG, T_SHORT, T_TWOWORD, T_UNKNOWN, T_WORD, TC_INTERFACE, TC_OBJECT, TC_STRING -
Constructor Summary
ConstructorsConstructorDescriptionCodeAttribute(ConstUtf8 attrName, byte[] dataBytes, com.sun.jdo.api.persistence.enhancer.classfile.CodeEnv codeEnv) Constructs a CodeAttribute object for later disassemblyCodeAttribute(ConstUtf8 attrName, int maxStack, int maxLocals, Insn code, byte[] codeBytes, ExceptionTable excTable, AttributeVector codeAttrs, com.sun.jdo.api.persistence.enhancer.classfile.CodeEnv codeEnv) Constructs a CodeAttribute objectCodeAttribute(ConstUtf8 attrName, int maxStack, int maxLocals, Insn code, ExceptionTable excTable, AttributeVector codeAttrs) Constructs a CodeAttribute object for construction from scratch -
Method Summary
Modifier and TypeMethodDescriptionReturn the attributes which apply to this codebyte[]Return the java VM byte code sequence for this method - null for native and abstract methodsReturn the exception ranges and handlers which apply to the code in this method.intReturn the maximum number of local variables used by this methodvoidsetLocalsUsed(int used) Set the maximum number of local variables used by this methodvoidsetStackUsed(int used) Set the maximum number of stack entries used by this methodvoidsetTheCode(Insn insn) Install the instruction sequence for this method - the byte code array is later updated.intReturn the maximum number of stack entries used by this methodtheCode()Return the instruction sequence for this method - initially derived from the byte code array, but may later be modifiedMethods inherited from class com.sun.jdo.api.persistence.enhancer.classfile.ClassAttribute
attrName
-
Field Details
-
expectedAttrName
- See Also:
-
-
Constructor Details
-
CodeAttribute
public CodeAttribute(ConstUtf8 attrName, int maxStack, int maxLocals, Insn code, ExceptionTable excTable, AttributeVector codeAttrs) Constructs a CodeAttribute object for construction from scratch -
CodeAttribute
public CodeAttribute(ConstUtf8 attrName, int maxStack, int maxLocals, Insn code, byte[] codeBytes, ExceptionTable excTable, AttributeVector codeAttrs, com.sun.jdo.api.persistence.enhancer.classfile.CodeEnv codeEnv) Constructs a CodeAttribute object -
CodeAttribute
public CodeAttribute(ConstUtf8 attrName, byte[] dataBytes, com.sun.jdo.api.persistence.enhancer.classfile.CodeEnv codeEnv) Constructs a CodeAttribute object for later disassembly
-
-
Method Details
-
stackUsed
public int stackUsed()Return the maximum number of stack entries used by this method -
setStackUsed
public void setStackUsed(int used) Set the maximum number of stack entries used by this method -
localsUsed
public int localsUsed()Return the maximum number of local variables used by this method -
setLocalsUsed
public void setLocalsUsed(int used) Set the maximum number of local variables used by this method -
byteCodes
public byte[] byteCodes()Return the java VM byte code sequence for this method - null for native and abstract methods -
theCode
Return the instruction sequence for this method - initially derived from the byte code array, but may later be modified -
setTheCode
Install the instruction sequence for this method - the byte code array is later updated. -
exceptionHandlers
Return the exception ranges and handlers which apply to the code in this method. -
attributes
Return the attributes which apply to this code
-