Class INVOKEINTERFACE

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

public final class INVOKEINTERFACE extends InvokeInstruction
INVOKEINTERFACE - Invoke interface method
Stack: ..., objectref, [arg1, [arg2 ...]] -> ...
See Also:
  • Constructor Details

  • 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.
    • consumeStack

      public int consumeStack(ConstantPoolGen cpg)
      Description copied from class: InvokeInstruction
      Also works for instructions whose stack effect depends on the constant pool entry they reference.
      Specified by:
      consumeStack in interface StackConsumer
      Overrides:
      consumeStack in class InvokeInstruction
      Parameters:
      cpg - the constant pool generator.
      Returns:
      Number of words consumed from stack by this instruction.
    • dump

      public void dump(DataOutputStream out) throws IOException
      Dumps instruction as byte code to stream out.
      Overrides:
      dump in class CPInstruction
      Parameters:
      out - Output stream.
      Throws:
      IOException - Thrown when an I/O exception of some sort has occurred.
    • getCount

      public int getCount()
      The count argument according to the Java Language Specification, Second Edition.
    • getExceptions

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

      protected void initFromFile(ByteSequence bytes, boolean wide) throws IOException
      Reads needed data (that is, index) from file.
      Overrides:
      initFromFile in class CPInstruction
      Parameters:
      bytes - input stream.
      wide - wide prefix?.
      Throws:
      IOException - may be thrown if the implementation needs to read data from the file
    • toString

      Description copied from class: Instruction
      Gets the mnemonic for instruction with symbolic references resolved.
      Overrides:
      toString in class InvokeInstruction
      Parameters:
      cp - the constant pool.
      Returns:
      mnemonic for instruction with symbolic references resolved.