org.apache.tomcat.util.bcel.classfile

## Class CodeException

- java.lang.Object
- - org.apache.tomcat.util.bcel.classfile.CodeException

All Implemented Interfaces:
  Serializable, Cloneable, Constants

    public final class CodeException
    extends Object
    implements Cloneable, Constants, Serializable

This class represents an entry in the exception table of the Code attribute and is used only there. It contains a range in which a particular exception handler is active.

Author:
  M. Dahm
See Also:
  `Code`, Serialized Form

### Field Summary

### Fields inherited from interface org.apache.tomcat.util.bcel.Constants

`ACC_ABSTRACT, ACC_ANNOTATION, ACC_ENUM, ACC_FINAL, ACC_INTERFACE, ACC_SUPER, ACCESS_NAMES, ALOAD, ANEWARRAY, APPEND_FRAME, APPEND_FRAME_MAX, ASTORE, ATTR_ANNOTATION_DEFAULT, ATTR_BOOTSTRAP_METHODS, ATTR_CODE, ATTR_CONSTANT_VALUE, ATTR_DEPRECATED, ATTR_ENCLOSING_METHOD, ATTR_EXCEPTIONS, ATTR_INNER_CLASSES, ATTR_LINE_NUMBER_TABLE, ATTR_LOCAL_VARIABLE_TABLE, ATTR_LOCAL_VARIABLE_TYPE_TABLE, ATTR_METHOD_PARAMETERS, ATTR_PMG, ATTR_RUNTIME_INVISIBLE_ANNOTATIONS, ATTR_RUNTIME_INVISIBLE_PARAMETER_ANNOTATIONS, ATTR_RUNTIME_VISIBLE_ANNOTATIONS, ATTR_RUNTIME_VISIBLE_PARAMETER_ANNOTATIONS, ATTR_SIGNATURE, ATTR_SOURCE_FILE, ATTR_STACK_MAP, ATTR_STACK_MAP_TABLE, ATTR_SYNTHETIC, ATTR_UNKNOWN, ATTRIBUTE_NAMES, CHECKCAST, CHOP_FRAME, CHOP_FRAME_MAX, CONSTANT_Class, CONSTANT_Double, CONSTANT_Fieldref, CONSTANT_Float, CONSTANT_Integer, CONSTANT_InterfaceMethodref, CONSTANT_InvokeDynamic, CONSTANT_Long, CONSTANT_MethodHandle, CONSTANT_Methodref, CONSTANT_MethodType, CONSTANT_NameAndType, CONSTANT_NAMES, CONSTANT_String, CONSTANT_Utf8, DLOAD, DSTORE, FLOAD, FSTORE, FULL_FRAME, GETFIELD, GETSTATIC, GOTO, GOTO_W, 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, ILLEGAL_OPCODE, ILLEGAL_TYPE, ILOAD, INSTANCEOF, INVOKEINTERFACE, INVOKESPECIAL, INVOKESTATIC, INVOKEVIRTUAL, ISTORE, ITEM_Bogus, ITEM_NAMES, ITEM_NewObject, ITEM_Object, JSR, JSR_W, KNOWN_ATTRIBUTES, LDC, LDC_W, LDC2_W, LLOAD, LOOKUPSWITCH, LSTORE, MAX_ACC_FLAG, MULTIANEWARRAY, NEW, NEWARRAY, NO_OF_OPERANDS, OPCODE_NAMES, PUTFIELD, PUTSTATIC, RESERVED, RET, SAME_FRAME, SAME_FRAME_EXTENDED, SAME_FRAME_MAX, SAME_LOCALS_1_STACK_ITEM_FRAME, SAME_LOCALS_1_STACK_ITEM_FRAME_EXTENDED, SAME_LOCALS_1_STACK_ITEM_FRAME_MAX, T_BYTE, T_INT, T_SHORT, T_UNKNOWN, TABLESWITCH, TYPE_NAMES, TYPE_OF_OPERANDS, UNDEFINED, UNPREDICTABLE, WIDE`

### Constructor Summary

Constructors
Constructor and Description
`CodeException(int start_pc, int end_pc, int handler_pc, int catch_type)`

### Method Summary

Methods
`CodeException` `copy()`
`void` `dump(DataOutputStream file)` Dump code exception to file stream in binary format.
`String` `toString()`
`String` `toString(ConstantPool cp, boolean verbose)`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

### Constructor Detail

#### CodeException

    public CodeException(int start_pc,
                 int end_pc,
                 int handler_pc,
                 int catch_type)

Parameters:
  `start_pc` - Range in the code the exception handler is active, start_pc is inclusive while
  `end_pc` - is exclusive
  `handler_pc` - Starting address of exception handler, i.e., an offset from start of code.
  `catch_type` - If zero the handler catches any exception, otherwise it points to the exception class which is to be caught.

### Method Detail

#### dump

    public final void dump(DataOutputStream file)
                    throws IOException

Dump code exception to file stream in binary format.

Parameters:
  `file` - Output file stream
Throws:
  `IOException`

#### toString

    public final String toString()

Overrides:
  `toString` in class `Object`
Returns:
  String representation.

#### toString

    public final String toString(ConstantPool cp,
                  boolean verbose)

Returns:
  String representation.

#### copy

    public CodeException copy()

Returns:
  deep copy of this object