public class LabelForm extends ByteCodeForm
| Modifier and Type | Field and Description |
|---|---|
protected boolean |
widened |
byteCodeArray, byteCodesByName, WIDENED| Constructor and Description |
|---|
LabelForm(int opcode,
String name,
int[] rewrite) |
LabelForm(int opcode,
String name,
int[] rewrite,
boolean widened) |
| Modifier and Type | Method and Description |
|---|---|
void |
fixUpByteCodeTargets(ByteCode byteCode,
CodeAttribute codeAttribute)
The ByteCodeForm knows how to fix up a bytecode if it needs to be fixed up because it holds a Label bytecode.
|
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.
|
calculateOperandPosition, firstOperandIndex, get, getName, getOpcode, getRewrite, getRewriteCopy, hasMultipleByteCodes, hasNoOperand, nestedMustStartClassPool, operandLength, toStringprotected boolean widened
public void fixUpByteCodeTargets(ByteCode byteCode, CodeAttribute codeAttribute)
ByteCodeFormfixUpByteCodeTargets in class ByteCodeFormbyteCode - a ByteCode to be fixed upcodeAttribute - a CodeAttribute used to determine how the ByteCode should be fixed up.public void setByteCodeOperands(ByteCode byteCode, OperandManager operandManager, int codeLength)
ByteCodeFormsetByteCodeOperands in class ByteCodeFormbyteCode - 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).Copyright © 2002–2020 The Apache Software Foundation. All rights reserved.