Class InvokeinterfaceAgent

java.lang.Object
org.eolang.opeo.decompilation.agents.InvokeinterfaceAgent
All Implemented Interfaces:
DecompilationAgent

public final class InvokeinterfaceAgent extends Object implements DecompilationAgent
Invokeinterface instruction handler.

Other bytes: 4: indexbyte1, indexbyte2, count, 0

Stack: objectref, [arg1, arg2, ...] → result

Invokes an interface method on object objectref and puts the result on the stack, might be void; the interface method is identified by method reference index in constant pool (indexbyte1 << 8 | indexbyte2)

Since:
0.2
  • Constructor Details

    • InvokeinterfaceAgent

      public InvokeinterfaceAgent()
  • Method Details

    • appropriate

      public boolean appropriate(DecompilerState state)
      Description copied from interface: DecompilationAgent
      Check if the agent is suitable for the current state.
      Specified by:
      appropriate in interface DecompilationAgent
      Parameters:
      state - Current state.
      Returns:
      True if the agent is suitable for the current state.
    • supported

      public org.eolang.opeo.decompilation.agents.Supported supported()
      Description copied from interface: DecompilationAgent
      Supported opcodes.
      Specified by:
      supported in interface DecompilationAgent
      Returns:
      Supported opcodes.
    • handle

      public void handle(DecompilerState state)
      Description copied from interface: DecompilationAgent
      Handle the current state.
      Specified by:
      handle in interface DecompilationAgent
      Parameters:
      state - Current state to handle together with operand stack and variables.