Class GETFIELD

All Implemented Interfaces:
Cloneable, ExceptionThrower, IndexedInstruction, LoadClass, StackConsumer, StackProducer, TypedInstruction

GETFIELD - Fetch field from object
Stack: ..., objectref -> ..., value
OR
Stack: ..., objectref -> ..., value.word1, value.word2
  • Constructor Details

    • GETFIELD

      public GETFIELD(int index)
      Constructs a GETFIELD instruction.
      Parameters:
      index - the constant pool index.
  • Method Details

    • accept

      public void accept(Visitor v)
      Call corresponding visitor method(s). The order is: Call visitor methods of implemented interfaces first, then call methods according to the class hierarchy in descending order, that is, the most specific visitXXX() call comes last.
      Specified by:
      accept in class Instruction
      Parameters:
      v - Visitor object.
    • getExceptions

      public Class<?>[] getExceptions()
      Description copied from interface: ExceptionThrower
      Gets the exceptions that may be thrown by this instruction.
      Specified by:
      getExceptions in interface ExceptionThrower
      Returns:
      the exceptions that may be thrown by this instruction.
    • produceStack

      public int produceStack(ConstantPoolGen cpg)
      Description copied from class: Instruction
      This method also gives right results for instructions whose effect on the stack depends on the constant pool entry they reference.
      Specified by:
      produceStack in interface StackProducer
      Overrides:
      produceStack in class Instruction
      Parameters:
      cpg - the constant pool generator.
      Returns:
      Number of words produced onto stack by this instruction, or Constants.UNPREDICTABLE, if this cannot be computed statically