Module de.carne.mcd.jvmdecoder
Enum ByteOperandType
- java.lang.Object
-
- java.lang.Enum<ByteOperandType>
-
- de.carne.mcd.jvmdecoder.classfile.bytecode.ByteOperandType
-
- All Implemented Interfaces:
OperandType,java.io.Serializable,java.lang.Comparable<ByteOperandType>
public enum ByteOperandType extends java.lang.Enum<ByteOperandType> implements OperandType
Possible byte operand types.
-
-
Enum Constant Summary
Enum Constants Enum Constant Description ARRAY_TYPEArray type value.DIMENSIONDimension byte value (for multianewarray).IMMEDIATE_VALUEImmediate byte value.INC_CONSTIncrement byte value (for iinc).LOCAL_VARIABLE_INDEXIndex into the local variable table.RUNTIME_CONSTANT_INDEXIndex into the run-time constant pool.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description voiddecode(int pc, de.carne.mcd.io.MCDInputBuffer buffer, de.carne.mcd.io.MCDOutputBuffer out)Decodes the operand.chartype()Gets the operand's type (B:byte, S:short, I:int).static ByteOperandTypevalueOf(java.lang.String name)Returns the enum constant of this type with the specified name.static ByteOperandType[]values()Returns an array containing the constants of this enum type, in the order they are declared.-
Methods inherited from class java.lang.Enum
clone, compareTo, equals, finalize, getDeclaringClass, hashCode, name, ordinal, toString, valueOf
-
Methods inherited from interface de.carne.mcd.jvmdecoder.classfile.bytecode.OperandType
name
-
-
-
-
Enum Constant Detail
-
IMMEDIATE_VALUE
public static final ByteOperandType IMMEDIATE_VALUE
Immediate byte value.
-
ARRAY_TYPE
public static final ByteOperandType ARRAY_TYPE
Array type value.
-
INC_CONST
public static final ByteOperandType INC_CONST
Increment byte value (for iinc).
-
DIMENSION
public static final ByteOperandType DIMENSION
Dimension byte value (for multianewarray).
-
LOCAL_VARIABLE_INDEX
public static final ByteOperandType LOCAL_VARIABLE_INDEX
Index into the local variable table.
-
RUNTIME_CONSTANT_INDEX
public static final ByteOperandType RUNTIME_CONSTANT_INDEX
Index into the run-time constant pool.
-
-
Method Detail
-
values
public static ByteOperandType[] values()
Returns an array containing the constants of this enum type, in the order they are declared. This method may be used to iterate over the constants as follows:for (ByteOperandType c : ByteOperandType.values()) System.out.println(c);
- Returns:
- an array containing the constants of this enum type, in the order they are declared
-
valueOf
public static ByteOperandType valueOf(java.lang.String name)
Returns the enum constant of this type with the specified name. The string must match exactly an identifier used to declare an enum constant in this type. (Extraneous whitespace characters are not permitted.)- Parameters:
name- the name of the enum constant to be returned.- Returns:
- the enum constant with the specified name
- Throws:
java.lang.IllegalArgumentException- if this enum type has no constant with the specified namejava.lang.NullPointerException- if the argument is null
-
type
public char type()
Description copied from interface:OperandTypeGets the operand's type (B:byte, S:short, I:int).- Specified by:
typein interfaceOperandType- Returns:
- the operand's type (B:byte, S:short, I:int).
-
decode
public void decode(int pc, de.carne.mcd.io.MCDInputBuffer buffer, de.carne.mcd.io.MCDOutputBuffer out) throws java.io.IOExceptionDescription copied from interface:OperandTypeDecodes the operand.- Specified by:
decodein interfaceOperandType- Parameters:
pc- the program counter of the corresponding opcode.buffer- the MCDInputBuffer to decode from.out- the MCDOutputBuffer to decode to.- Throws:
java.io.IOException- if an I/O error occurs.
-
-