Enum ByteOperandType

    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void decode​(int pc, de.carne.mcd.io.MCDInputBuffer buffer, de.carne.mcd.io.MCDOutputBuffer out)
      Decodes the operand.
      char type()
      Gets the operand's type (B:byte, S:short, I:int).
      static ByteOperandType valueOf​(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 class java.lang.Object

        getClass, notify, notifyAll, wait, wait, wait
      • 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 name
        java.lang.NullPointerException - if the argument is null
      • type

        public char type()
        Description copied from interface: OperandType
        Gets the operand's type (B:byte, S:short, I:int).
        Specified by:
        type in interface OperandType
        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.IOException
        Description copied from interface: OperandType
        Decodes the operand.
        Specified by:
        decode in interface OperandType
        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.