Overview | Package | Class | Use | Tree | Deprecated | Index
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## javassist.bytecode
Class CodeAttribute

    java.lang.Object
      |
      +--javassist.bytecode.AttributeInfo
            |
            +--javassist.bytecode.CodeAttribute

All Implemented Interfaces:
  Opcode

public class CodeAttribute
extends AttributeInfo
implements Opcode

`Code_attribute`.

To browse the `code` field of a `Code_attribute` structure, use `CodeIterator`.

See Also:
  `CodeIterator`

Nested Class Summary
`static class` | `CodeAttribute.RuntimeCopyException` An exception that may be thrown by `copy()` in `CodeAttribute`.

Field Summary
`static java.lang.String` | `tag` The name of this attribute `"Code"`.

Fields inherited from interface javassist.bytecode.Opcode
`AALOAD, AASTORE, ACONST_NULL, ALOAD, ALOAD_0, ALOAD_1, ALOAD_2, ALOAD_3, ANEWARRAY, ARETURN, ARRAYLENGTH, ASTORE, ASTORE_0, ASTORE_1, ASTORE_2, ASTORE_3, ATHROW, BALOAD, BASTORE, BIPUSH, CALOAD, CASTORE, CHECKCAST, D2F, D2I, D2L, DADD, DALOAD, DASTORE, DCMPG, DCMPL, DCONST_0, DCONST_1, DDIV, DLOAD, DLOAD_0, DLOAD_1, DLOAD_2, DLOAD_3, DMUL, DNEG, DREM, DRETURN, DSTORE, DSTORE_0, DSTORE_1, DSTORE_2, DSTORE_3, DSUB, DUP, DUP_X1, DUP_X2, DUP2, DUP2_X1, DUP2_X2, F2D, F2I, F2L, FADD, FALOAD, FASTORE, FCMPG, FCMPL, FCONST_0, FCONST_1, FCONST_2, FDIV, FLOAD, FLOAD_0, FLOAD_1, FLOAD_2, FLOAD_3, FMUL, FNEG, FREM, FRETURN, FSTORE, FSTORE_0, FSTORE_1, FSTORE_2, FSTORE_3, FSUB, GETFIELD, GETSTATIC, GOTO, GOTO_W, I2B, I2C, I2D, I2F, I2L, I2S, IADD, IALOAD, IAND, IASTORE, ICONST_0, ICONST_1, ICONST_2, ICONST_3, ICONST_4, ICONST_5, ICONST_M1, IDIV, IF_ACMPEQ, IF_ACMPNE, IF_ICMPEQ, IF_ICMPGE, IF_ICMPGT, IF_ICMPLE, IF_ICMPLT, IF_ICMPNE, IFEQ, IFGE, IFGT, IFLE, IFLT, IFNE, IFNONNULL, IFNULL, IINC, ILOAD, ILOAD_0, ILOAD_1, ILOAD_2, ILOAD_3, IMUL, INEG, INSTANCEOF, INVOKEINTERFACE, INVOKESPECIAL, INVOKESTATIC, INVOKEVIRTUAL, IOR, IREM, IRETURN, ISHL, ISHR, ISTORE, ISTORE_0, ISTORE_1, ISTORE_2, ISTORE_3, ISUB, IUSHR, IXOR, JSR, JSR_W, L2D, L2F, L2I, LADD, LALOAD, LAND, LASTORE, LCMP, LCONST_0, LCONST_1, LDC, LDC_W, LDC2_W, LDIV, LLOAD, LLOAD_0, LLOAD_1, LLOAD_2, LLOAD_3, LMUL, LNEG, LOOKUPSWITCH, LOR, LREM, LRETURN, LSHL, LSHR, LSTORE, LSTORE_0, LSTORE_1, LSTORE_2, LSTORE_3, LSUB, LUSHR, LXOR, MONITORENTER, MONITOREXIT, MULTIANEWARRAY, NEW, NEWARRAY, NOP, POP, POP2, PUTFIELD, PUTSTATIC, RET, RETURN, SALOAD, SASTORE, SIPUSH, STACK_GROW, SWAP, T_BOOLEAN, T_BYTE, T_CHAR, T_DOUBLE, T_FLOAT, T_INT, T_LONG, T_SHORT, TABLESWITCH, WIDE`

Constructor Summary
`CodeAttribute(ConstPool cp, int stack, int locals, byte[] code, ExceptionTable etable)` Constructs a `Code_attribute`.

Method Summary
`AttributeInfo` | `copy(ConstPool newCp, java.util.Map classnames)` Makes a copy.
`byte[]` | `get()` This method is not available.
`AttributeInfo` | `getAttribute(java.lang.String name)` Returns the attribute with the specified name.
`java.util.List` | `getAttributes()` Returns `attributes[]`.
`byte[]` | `getCode()` Returns `code[]`.
`int` | `getCodeLength()` Returns `code_length`.
`java.lang.String` | `getDeclaringClass()` Returns the name of the class declaring the method including this code attribute.
`ExceptionTable` | `getExceptionTable()` Returns `exception_table[]`.
`int` | `getMaxLocals()` Returns `max_locals`.
`int` | `getMaxStack()` Returns `max_stack`.
`CodeIterator` | `iterator()` Makes a new iterator for reading this code attribute.
`int` | `length()` Returns the length of this `attribute_info` structure.
`void` | `set(byte[] newinfo)` This method is not available.
`void` | `setMaxLocals(int value)` Sets `max_locals`.
`void` | `setMaxStack(int value)` Sets `max_stack`.

Methods inherited from class javassist.bytecode.AttributeInfo
`getConstPool, getName`

Methods inherited from class java.lang.Object
`equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Field Detail

### tag

    public static final java.lang.String tag

  The name of this attribute `"Code"`.

  See Also:
    Constant Field Values

Constructor Detail

### CodeAttribute

    public CodeAttribute(ConstPool cp,
                         int stack,
                         int locals,
                         byte[] code,
                         ExceptionTable etable)

  Constructs a `Code_attribute`.

Parameters:
  `cp` - constant pool table
  `stack` - `max_stack`
  `locals` - `max_locals`
  `code` - `code[]`
  `etable` - `exception_table[]`

Method Detail

### copy

    public AttributeInfo copy(ConstPool newCp,
                              java.util.Map classnames)
                       throws CodeAttribute.RuntimeCopyException

  Makes a copy. Class names are replaced according to the given `Map` object.

  Overrides:
    `copy` in class `AttributeInfo`
  Parameters:
    `newCp` - the constant pool table used by the new copy.
    `classnames` - pairs of replaced and substituted class names.
  Returns:
    `CodeAttribute` object.
  Throws:
    `CodeAttribute.RuntimeCopyException` - if a `BadBytecode` exception is thrown, it is converted into `RuntimeCopyException`.

### length

    public int length()

  Returns the length of this `attribute_info` structure. The returned value is `attribute_length + 6`.

  Overrides:
    `length` in class `AttributeInfo`

### get

    public byte[] get()

  This method is not available.

  Overrides:
    `get` in class `AttributeInfo`
  Throws:
    `java.lang.UnsupportedOperationException` - always thrown.

### set

    public void set(byte[] newinfo)

  This method is not available.

  Overrides:
    `set` in class `AttributeInfo`
  Throws:
    `java.lang.UnsupportedOperationException` - always thrown.

### getDeclaringClass

    public java.lang.String getDeclaringClass()

  Returns the name of the class declaring the method including this code attribute.

### getMaxStack

    public int getMaxStack()

  Returns `max_stack`.

### setMaxStack

    public void setMaxStack(int value)

  Sets `max_stack`.

### getMaxLocals

    public int getMaxLocals()

  Returns `max_locals`.

### setMaxLocals

    public void setMaxLocals(int value)

  Sets `max_locals`.

### getCodeLength

    public int getCodeLength()

  Returns `code_length`.

### getCode

    public byte[] getCode()

  Returns `code[]`.

### iterator

    public CodeIterator iterator()

  Makes a new iterator for reading this code attribute.

### getExceptionTable

    public ExceptionTable getExceptionTable()

  Returns `exception_table[]`.

### getAttributes

    public java.util.List getAttributes()

  Returns `attributes[]`. It returns a list of `AttributeInfo`.

  See Also:
    `AttributeInfo`

### getAttribute

    public AttributeInfo getAttribute(java.lang.String name)

  Returns the attribute with the specified name. If it is not found, this method returns null.

  Parameters:
    `name` - attribute name
  Returns:
    an `AttributeInfo` object or null.

Overview | Package | Class | Use | Tree | Deprecated | Index
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Javassist, a Java-bytecode translator toolkit. Copyright (C) 1999-2003 Shigeru Chiba. All Rights Reserved.