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
-
public class LocalVariableTableAttribute extends BCIRenumberedAttribute
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
Constructors Constructor Description LocalVariableTableAttribute(int local_variable_table_length, int[] start_pcs, int[] lengths, CPUTF8[] names, CPUTF8[] descriptors, int[] indexes)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description protected intgetLength()protected ClassFileEntry[]getNestedClassFileEntries()protected int[]getStartPCs()voidrenumber(java.util.List byteCodeOffsets)In Pack200, line number tables are BCI renumbered.protected voidresolve(ClassConstantPool pool)Allows the constant pool entries to resolve their nested entries.static voidsetAttributeName(CPUTF8 cpUTF8Value)voidsetCodeLength(int length)java.lang.StringtoString()protected voidwriteBody(java.io.DataOutputStream dos)-
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 Detail
-
LocalVariableTableAttribute
public LocalVariableTableAttribute(int local_variable_table_length, int[] start_pcs, int[] lengths, CPUTF8[] names, CPUTF8[] descriptors, int[] indexes)
-
-
Method Detail
-
setAttributeName
public static void setAttributeName(CPUTF8 cpUTF8Value)
-
setCodeLength
public void setCodeLength(int length)
-
getLength
protected int getLength()
- Specified by:
getLengthin classBCIRenumberedAttribute
-
writeBody
protected void writeBody(java.io.DataOutputStream dos) throws java.io.IOException
- Specified by:
writeBodyin classBCIRenumberedAttribute- Throws:
java.io.IOException
-
getNestedClassFileEntries
protected ClassFileEntry[] getNestedClassFileEntries()
- Overrides:
getNestedClassFileEntriesin classAttribute
-
resolve
protected void resolve(ClassConstantPool pool)
Description copied from class:ClassFileEntryAllows the constant pool entries to resolve their nested entries.
-
toString
public java.lang.String toString()
- Specified by:
toStringin classBCIRenumberedAttribute
-
getStartPCs
protected int[] getStartPCs()
- Specified by:
getStartPCsin classBCIRenumberedAttribute
-
renumber
public void renumber(java.util.List byteCodeOffsets) throws Pack200Exception
Description copied from class:BCIRenumberedAttributeIn 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:
renumberin classBCIRenumberedAttribute- Parameters:
byteCodeOffsets- List of Integer offsets of the bytecode array- Throws:
Pack200Exception- TODO
-
-