Class NarrowClassRefForm
java.lang.Object
org.apache.commons.compress.harmony.unpack200.bytecode.forms.ByteCodeForm
org.apache.commons.compress.harmony.unpack200.bytecode.forms.ReferenceForm
org.apache.commons.compress.harmony.unpack200.bytecode.forms.ClassRefForm
org.apache.commons.compress.harmony.unpack200.bytecode.forms.NarrowClassRefForm
This class is used for representations of cldc and cldc_w. In these cases, a narrow class ref has one byte and a wide class ref has two bytes.
-
Field Summary
Fields inherited from class org.apache.commons.compress.harmony.unpack200.bytecode.forms.ClassRefForm
widenedFields inherited from class org.apache.commons.compress.harmony.unpack200.bytecode.forms.ByteCodeForm
byteCodeArray, byteCodesByName, WIDENED -
Constructor Summary
ConstructorsConstructorDescriptionNarrowClassRefForm(int opcode, String name, int[] rewrite) Constructs a new instance with the specified opcode, name, operandType and rewrite.NarrowClassRefForm(int opcode, String name, int[] rewrite, boolean widened) Constructs a new instance with the specified opcode, name, operandType and rewrite. -
Method Summary
Modifier and TypeMethodDescriptionbooleanprotected voidsetNestedEntries(ByteCode byteCode, OperandManager operandManager, int offset) Sets the nested entries.Methods inherited from class org.apache.commons.compress.harmony.unpack200.bytecode.forms.ClassRefForm
getOffset, getPoolIDMethods inherited from class org.apache.commons.compress.harmony.unpack200.bytecode.forms.ReferenceForm
setByteCodeOperandsMethods inherited from class org.apache.commons.compress.harmony.unpack200.bytecode.forms.ByteCodeForm
calculateOperandPosition, firstOperandIndex, fixUpByteCodeTargets, get, getName, getOpcode, getRewrite, getRewriteCopy, hasMultipleByteCodes, hasNoOperand, operandLength, toString
-
Constructor Details
-
NarrowClassRefForm
Constructs a new instance with the specified opcode, name, operandType and rewrite.- Parameters:
opcode- index corresponding to the opcode's value.name- String printable name of the opcode.rewrite- Operand positions (which will later be rewritten in ByteCodes) are indicated by -1.
-
NarrowClassRefForm
Constructs a new instance with the specified opcode, name, operandType and rewrite.- Parameters:
opcode- index corresponding to the opcode's value.name- String printable name of the opcode.rewrite- Operand positions (which will later be rewritten in ByteCodes) are indicated by -1.widened- TODO.
-
-
Method Details
-
nestedMustStartClassPool
- Overrides:
nestedMustStartClassPoolin classByteCodeForm
-
setNestedEntries
protected void setNestedEntries(ByteCode byteCode, OperandManager operandManager, int offset) throws Pack200Exception Description copied from class:ReferenceFormSets the nested entries.- Overrides:
setNestedEntriesin classClassRefForm- Parameters:
byteCode- byte codes.operandManager- Operand manager.offset- offset.- Throws:
Pack200Exception- if support for a type is not supported or the offset not in the range [0,Integer.MAX_VALUE].
-