public abstract class org.jruby.ir.instructions.NOperandResultBaseInstr extends org.jruby.ir.instructions.ResultBaseInstr
  minor version: 0
  major version: 59
  flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
  this_class: org.jruby.ir.instructions.NOperandResultBaseInstr
  super_class: org.jruby.ir.instructions.ResultBaseInstr
{
  private transient org.jruby.ir.operands.Operand[] operands;
    descriptor: [Lorg/jruby/ir/operands/Operand;
    flags: (0x0082) ACC_PRIVATE, ACC_TRANSIENT

  public void <init>(org.jruby.ir.Operation, org.jruby.ir.operands.Variable, org.jruby.ir.operands.Operand[]);
    descriptor: (Lorg/jruby/ir/Operation;Lorg/jruby/ir/operands/Variable;[Lorg/jruby/ir/operands/Operand;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=4
        start local 0 // org.jruby.ir.instructions.NOperandResultBaseInstr this
        start local 1 // org.jruby.ir.Operation operation
        start local 2 // org.jruby.ir.operands.Variable result
        start local 3 // org.jruby.ir.operands.Operand[] operands
         0: .line 14
            aload 0 /* this */
            aload 1 /* operation */
            aload 2 /* result */
            invokespecial org.jruby.ir.instructions.ResultBaseInstr.<init>:(Lorg/jruby/ir/Operation;Lorg/jruby/ir/operands/Variable;)V
         1: .line 16
            aload 0 /* this */
            aload 3 /* operands */
            putfield org.jruby.ir.instructions.NOperandResultBaseInstr.operands:[Lorg/jruby/ir/operands/Operand;
         2: .line 17
            return
        end local 3 // org.jruby.ir.operands.Operand[] operands
        end local 2 // org.jruby.ir.operands.Variable result
        end local 1 // org.jruby.ir.Operation operation
        end local 0 // org.jruby.ir.instructions.NOperandResultBaseInstr this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    3     0       this  Lorg/jruby/ir/instructions/NOperandResultBaseInstr;
            0    3     1  operation  Lorg/jruby/ir/Operation;
            0    3     2     result  Lorg/jruby/ir/operands/Variable;
            0    3     3   operands  [Lorg/jruby/ir/operands/Operand;
    MethodParameters:
           Name  Flags
      operation  
      result     
      operands   

  public org.jruby.ir.operands.Operand[] getOperands();
    descriptor: ()[Lorg/jruby/ir/operands/Operand;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.jruby.ir.instructions.NOperandResultBaseInstr this
         0: .line 20
            aload 0 /* this */
            getfield org.jruby.ir.instructions.NOperandResultBaseInstr.operands:[Lorg/jruby/ir/operands/Operand;
            areturn
        end local 0 // org.jruby.ir.instructions.NOperandResultBaseInstr this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/ir/instructions/NOperandResultBaseInstr;

  public void setOperand(int, org.jruby.ir.operands.Operand);
    descriptor: (ILorg/jruby/ir/operands/Operand;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // org.jruby.ir.instructions.NOperandResultBaseInstr this
        start local 1 // int i
        start local 2 // org.jruby.ir.operands.Operand operand
         0: .line 24
            iload 1 /* i */
            iflt 1
            iload 1 /* i */
            aload 0 /* this */
            getfield org.jruby.ir.instructions.NOperandResultBaseInstr.operands:[Lorg/jruby/ir/operands/Operand;
            arraylength
            if_icmplt 2
         1: .line 25
      StackMap locals:
      StackMap stack:
            new java.lang.IllegalArgumentException
            dup
            new java.lang.StringBuilder
            dup
            ldc "No such operand to set at index: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 1 /* i */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 28
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.jruby.ir.instructions.NOperandResultBaseInstr.operands:[Lorg/jruby/ir/operands/Operand;
            iload 1 /* i */
            aload 2 /* operand */
            aastore
         3: .line 29
            return
        end local 2 // org.jruby.ir.operands.Operand operand
        end local 1 // int i
        end local 0 // org.jruby.ir.instructions.NOperandResultBaseInstr this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    4     0     this  Lorg/jruby/ir/instructions/NOperandResultBaseInstr;
            0    4     1        i  I
            0    4     2  operand  Lorg/jruby/ir/operands/Operand;
    MethodParameters:
         Name  Flags
      i        
      operand  
}
SourceFile: "NOperandResultBaseInstr.java"