Class LocalVariableTableAttribute
java.lang.Object
org.apache.commons.compress.harmony.unpack200.bytecode.ClassFileEntry
org.apache.commons.compress.harmony.unpack200.bytecode.Attribute
org.apache.commons.compress.harmony.unpack200.bytecode.BCIRenumberedAttribute
org.apache.commons.compress.harmony.unpack200.bytecode.LocalVariableTableAttribute
Local variable table
-
Field Summary
Fields inherited from class org.apache.commons.compress.harmony.unpack200.bytecode.BCIRenumberedAttribute
renumbered
Fields inherited from class org.apache.commons.compress.harmony.unpack200.bytecode.ClassFileEntry
NONE
-
Constructor Summary
ConstructorDescriptionLocalVariableTableAttribute
(int localVariableTableLength, int[] startPcs, int[] lengths, CPUTF8[] names, CPUTF8[] descriptors, int[] indexes) -
Method Summary
Modifier and TypeMethodDescriptionprotected int
protected ClassFileEntry[]
protected int[]
void
In Pack200, line number tables are BCI renumbered.protected void
resolve
(ClassConstantPool pool) Allows the constant pool entries to resolve their nested entries.static void
setAttributeName
(CPUTF8 cpUTF8Value) void
setCodeLength
(int length) toString()
protected void
Methods inherited from class org.apache.commons.compress.harmony.unpack200.bytecode.BCIRenumberedAttribute
hasBCIRenumbering
Methods inherited from class org.apache.commons.compress.harmony.unpack200.bytecode.Attribute
doWrite, equals, getAttributeName, getLengthIncludingHeader, hashCode, isSourceFileAttribute
Methods inherited from class org.apache.commons.compress.harmony.unpack200.bytecode.ClassFileEntry
objectHashCode, write
-
Constructor Details
-
LocalVariableTableAttribute
public LocalVariableTableAttribute(int localVariableTableLength, int[] startPcs, int[] lengths, CPUTF8[] names, CPUTF8[] descriptors, int[] indexes)
-
-
Method Details
-
setAttributeName
-
getLength
- Specified by:
getLength
in classBCIRenumberedAttribute
-
getNestedClassFileEntries
- Overrides:
getNestedClassFileEntries
in classAttribute
-
getStartPCs
- Specified by:
getStartPCs
in classBCIRenumberedAttribute
-
renumber
Description copied from class:BCIRenumberedAttribute
In Pack200, line number tables are BCI renumbered. This method takes the byteCodeOffsets (which is a List of Integers specifying the offset in the byte code array of each instruction) and updates the start_pcs so that it points to the instruction index itself, not the BCI renumbering of the instruction.- Overrides:
renumber
in classBCIRenumberedAttribute
- Parameters:
byteCodeOffsets
- List of Integer offsets of the byte code array- Throws:
Pack200Exception
- Thrown from a subclass.
-
resolve
Description copied from class:ClassFileEntry
Allows the constant pool entries to resolve their nested entries. -
setCodeLength
-
toString
- Specified by:
toString
in classBCIRenumberedAttribute
-
writeBody
- Specified by:
writeBody
in classBCIRenumberedAttribute
- Throws:
IOException
-