Package org.apache.commons.compress.harmony.unpack200.bytecode.forms

# Class NoArgumentForm

java.lang.Object
org.apache.commons.compress.harmony.unpack200.bytecode.forms.ByteCodeForm
org.apache.commons.compress.harmony.unpack200.bytecode.forms.NoArgumentForm

public class NoArgumentForm extends ByteCodeForm
This class implements the byte code form of all bytecodes which either have no operands (such as nop) or have all their operands passed on the stack (not encoded as bytes in the bytecode streams).

- ## Field Summary

  ### Fields inherited from class org.apache.commons.compress.harmony.unpack200.bytecode.forms.ByteCodeForm

  `byteCodeArray, byteCodesByName, WIDENED`

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `NoArgumentForm(int opcode, String name)`
  Constructs a new instance with the specified opcode, name, operandType and rewrite.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `void`
  `setByteCodeOperands(ByteCode byteCode, OperandManager operandManager, int codeLength)`
  Sets the rewrite of the byteCode.

  ### Methods inherited from class org.apache.commons.compress.harmony.unpack200.bytecode.forms.ByteCodeForm

  `calculateOperandPosition, firstOperandIndex, fixUpByteCodeTargets, get, getName, getOpcode, getRewrite, getRewriteCopy, hasMultipleByteCodes, hasNoOperand, nestedMustStartClassPool, operandLength, toString`

  ### Methods inherited from class java.lang.Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

- ## Constructor Details

  - ### NoArgumentForm

    public NoArgumentForm(int opcode, String name)
    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.

- ## Method Details

  - ### setByteCodeOperands

    public void setByteCodeOperands(ByteCode byteCode, OperandManager operandManager, int codeLength)
    Description copied from class: `ByteCodeForm`
    Sets the rewrite of the byteCode.
    Specified by:
      `setByteCodeOperands` in class `ByteCodeForm`
    Parameters:
      `byteCode` - ByteCode to be updated (!)
      `operandManager` - OperandTable from which to draw info
      `codeLength` - 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).