Class ReferenceForm
java.lang.Object
org.apache.commons.compress.harmony.unpack200.bytecode.forms.ByteCodeForm
org.apache.commons.compress.harmony.unpack200.bytecode.forms.ReferenceForm
- Direct Known Subclasses:
ClassRefForm
,ClassSpecificReferenceForm
,DoubleForm
,FieldRefForm
,IMethodRefForm
,LongForm
,MethodRefForm
,SingleByteReferenceForm
Abstract class of all ByteCodeForms which add a nested entry from the globalConstantPool.
-
Field Summary
Fields inherited from class org.apache.commons.compress.harmony.unpack200.bytecode.forms.ByteCodeForm
byteCodeArray, byteCodesByName, WIDENED
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionprotected abstract int
getOffset
(OperandManager operandManager) protected abstract int
void
setByteCodeOperands
(ByteCode byteCode, OperandManager operandManager, int codeLength) When passed a byteCode, an OperandTable and a SegmentConstantPool, this method will set the rewrite of the byteCode appropriately.protected void
setNestedEntries
(ByteCode byteCode, OperandManager operandManager, int offset) Methods inherited from class org.apache.commons.compress.harmony.unpack200.bytecode.forms.ByteCodeForm
calculateOperandPosition, firstOperandIndex, fixUpByteCodeTargets, get, getName, getOpcode, getRewrite, getRewriteCopy, hasMultipleByteCodes, hasNoOperand, nestedMustStartClassPool, operandLength, toString
-
Constructor Details
-
ReferenceForm
-
-
Method Details
-
getOffset
-
getPoolID
-
setByteCodeOperands
Description copied from class:ByteCodeForm
When passed a byteCode, an OperandTable and a SegmentConstantPool, this method will set the rewrite of the byteCode appropriately.- Specified by:
setByteCodeOperands
in classByteCodeForm
- Parameters:
byteCode
- ByteCode to be updated (!)operandManager
- OperandTable from which to draw infocodeLength
- Length of bytes (excluding this bytecode) from the beginning of the method. Used in calculating padding for some variable-length bytecodes (such as lookupswitch, tableswitch).
-
setNestedEntries
protected void setNestedEntries(ByteCode byteCode, OperandManager operandManager, int offset) throws Pack200Exception - Throws:
Pack200Exception
-