public abstract class ReferenceForm extends ByteCodeForm
byteCodeArray, byteCodesByName, WIDENED
Constructor and Description |
---|
ReferenceForm(int opcode,
String name,
int[] rewrite) |
Modifier and Type | Method and Description |
---|---|
protected abstract int |
getOffset(OperandManager operandManager) |
protected abstract int |
getPoolID() |
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) |
calculateOperandPosition, firstOperandIndex, fixUpByteCodeTargets, get, getName, getOpcode, getRewrite, getRewriteCopy, hasMultipleByteCodes, hasNoOperand, nestedMustStartClassPool, operandLength, toString
public ReferenceForm(int opcode, String name, int[] rewrite)
protected abstract int getOffset(OperandManager operandManager)
protected abstract int getPoolID()
public void setByteCodeOperands(ByteCode byteCode, OperandManager operandManager, int codeLength)
ByteCodeForm
setByteCodeOperands
in class ByteCodeForm
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).protected void setNestedEntries(ByteCode byteCode, OperandManager operandManager, int offset) throws Pack200Exception
Pack200Exception
Copyright © 2002–2022 The Apache Software Foundation. All rights reserved.