类 VariableInstruction

java.lang.Object
proguard.classfile.instruction.Instruction
proguard.classfile.instruction.VariableInstruction

public class VariableInstruction extends Instruction
This Instruction represents an instruction that refers to a variable on the local variable stack.
  • 字段详细资料

    • wide

      public boolean wide
    • variableIndex

      public int variableIndex
    • constant

      public int constant
  • 构造器详细资料

    • VariableInstruction

      public VariableInstruction()
      Creates an uninitialized VariableInstruction.
    • VariableInstruction

      public VariableInstruction(boolean wide)
    • VariableInstruction

      public VariableInstruction(byte opcode)
    • VariableInstruction

      public VariableInstruction(byte opcode, int variableIndex)
    • VariableInstruction

      public VariableInstruction(byte opcode, int variableIndex, int constant)
  • 方法详细资料

    • copy

      public VariableInstruction copy(VariableInstruction variableInstruction)
      Copies the given instruction into this instruction.
      参数:
      variableInstruction - the instruction to be copied.
      返回:
      this instruction.
    • isStore

      public boolean isStore()
      Returns whether this instruction stores the value of a variable. The value is false for the ret instruction, but true for the iinc instruction.
    • isLoad

      public boolean isLoad()
      Returns whether this instruction loads the value of a variable. The value is true for the ret instruction and for the iinc instruction.
    • canonicalOpcode

      public byte canonicalOpcode()
      从类复制的说明: Instruction
      Returns the canonical opcode of this instruction, i.e. typically the opcode whose extension has been removed.
      覆盖:
      canonicalOpcode 在类中 Instruction
    • shrink

      public Instruction shrink()
      从类复制的说明: Instruction
      Shrinks this instruction to its shortest possible form.
      指定者:
      shrink 在类中 Instruction
      返回:
      this instruction.
    • isWide

      protected boolean isWide()
      从类复制的说明: Instruction
      Returns whether the instruction is wide, i.e. preceded by a wide opcode. With the current specifications, only variable instructions can be wide.
      覆盖:
      isWide 在类中 Instruction
    • readInfo

      protected void readInfo(byte[] code, int offset)
      从类复制的说明: Instruction
      Reads the data following the instruction opcode.
      指定者:
      readInfo 在类中 Instruction
    • writeInfo

      protected void writeInfo(byte[] code, int offset)
      从类复制的说明: Instruction
      Writes data following the instruction opcode.
      指定者:
      writeInfo 在类中 Instruction
    • length

      public int length(int offset)
      从类复制的说明: Instruction
      Returns the length in bytes of the instruction.
      指定者:
      length 在类中 Instruction
    • accept

      public void accept(Clazz clazz, Method method, CodeAttribute codeAttribute, int offset, InstructionVisitor instructionVisitor)
      从类复制的说明: Instruction
      Accepts the given visitor.
      指定者:
      accept 在类中 Instruction
    • toString

      public String toString()
      覆盖:
      toString 在类中 Object
    • equals

      public boolean equals(Object o)
      指定者:
      equals 在类中 Instruction
    • hashCode

      public int hashCode()
      指定者:
      hashCode 在类中 Instruction