class com.oracle.truffle.api.test.polyglot.ProxyAPITest$ProxyArrayTest implements org.graalvm.polyglot.proxy.ProxyArray
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: com.oracle.truffle.api.test.polyglot.ProxyAPITest$ProxyArrayTest
  super_class: java.lang.Object
{
  java.util.function.Function<java.lang.Long, java.lang.Object> get;
    descriptor: Ljava/util/function/Function;
    flags: (0x0000) 
    Signature: Ljava/util/function/Function<Ljava/lang/Long;Ljava/lang/Object;>;

  java.util.function.BiFunction<java.lang.Long, org.graalvm.polyglot.Value, java.lang.Void> set;
    descriptor: Ljava/util/function/BiFunction;
    flags: (0x0000) 
    Signature: Ljava/util/function/BiFunction<Ljava/lang/Long;Lorg/graalvm/polyglot/Value;Ljava/lang/Void;>;

  java.util.function.Supplier<java.lang.Long> getSize;
    descriptor: Ljava/util/function/Supplier;
    flags: (0x0000) 
    Signature: Ljava/util/function/Supplier<Ljava/lang/Long;>;

  int getCounter;
    descriptor: I
    flags: (0x0000) 

  int setCounter;
    descriptor: I
    flags: (0x0000) 

  int getSizeCounter;
    descriptor: I
    flags: (0x0000) 

  void <init>();
    descriptor: ()V
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.truffle.api.test.polyglot.ProxyAPITest$ProxyArrayTest this
         0: .line 116
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
            return
        end local 0 // com.oracle.truffle.api.test.polyglot.ProxyAPITest$ProxyArrayTest this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/truffle/api/test/polyglot/ProxyAPITest$ProxyArrayTest;

  public java.lang.Object get(long);
    descriptor: (J)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // com.oracle.truffle.api.test.polyglot.ProxyAPITest$ProxyArrayTest this
        start local 1 // long index
         0: .line 127
            aload 0 /* this */
            dup
            getfield com.oracle.truffle.api.test.polyglot.ProxyAPITest$ProxyArrayTest.getCounter:I
            iconst_1
            iadd
            putfield com.oracle.truffle.api.test.polyglot.ProxyAPITest$ProxyArrayTest.getCounter:I
         1: .line 128
            aload 0 /* this */
            getfield com.oracle.truffle.api.test.polyglot.ProxyAPITest$ProxyArrayTest.get:Ljava/util/function/Function;
            lload 1 /* index */
            invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
            invokeinterface java.util.function.Function.apply:(Ljava/lang/Object;)Ljava/lang/Object;
            areturn
        end local 1 // long index
        end local 0 // com.oracle.truffle.api.test.polyglot.ProxyAPITest$ProxyArrayTest this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Lcom/oracle/truffle/api/test/polyglot/ProxyAPITest$ProxyArrayTest;
            0    2     1  index  J
    MethodParameters:
       Name  Flags
      index  

  public void set(long, org.graalvm.polyglot.Value);
    descriptor: (JLorg/graalvm/polyglot/Value;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // com.oracle.truffle.api.test.polyglot.ProxyAPITest$ProxyArrayTest this
        start local 1 // long index
        start local 3 // org.graalvm.polyglot.Value value
         0: .line 132
            aload 0 /* this */
            dup
            getfield com.oracle.truffle.api.test.polyglot.ProxyAPITest$ProxyArrayTest.setCounter:I
            iconst_1
            iadd
            putfield com.oracle.truffle.api.test.polyglot.ProxyAPITest$ProxyArrayTest.setCounter:I
         1: .line 133
            aload 0 /* this */
            getfield com.oracle.truffle.api.test.polyglot.ProxyAPITest$ProxyArrayTest.set:Ljava/util/function/BiFunction;
            lload 1 /* index */
            invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
            aload 3 /* value */
            invokeinterface java.util.function.BiFunction.apply:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         2: .line 134
            return
        end local 3 // org.graalvm.polyglot.Value value
        end local 1 // long index
        end local 0 // com.oracle.truffle.api.test.polyglot.ProxyAPITest$ProxyArrayTest this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0   this  Lcom/oracle/truffle/api/test/polyglot/ProxyAPITest$ProxyArrayTest;
            0    3     1  index  J
            0    3     3  value  Lorg/graalvm/polyglot/Value;
    MethodParameters:
       Name  Flags
      index  
      value  

  public long getSize();
    descriptor: ()J
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // com.oracle.truffle.api.test.polyglot.ProxyAPITest$ProxyArrayTest this
         0: .line 137
            aload 0 /* this */
            dup
            getfield com.oracle.truffle.api.test.polyglot.ProxyAPITest$ProxyArrayTest.getSizeCounter:I
            iconst_1
            iadd
            putfield com.oracle.truffle.api.test.polyglot.ProxyAPITest$ProxyArrayTest.getSizeCounter:I
         1: .line 138
            aload 0 /* this */
            getfield com.oracle.truffle.api.test.polyglot.ProxyAPITest$ProxyArrayTest.getSize:Ljava/util/function/Supplier;
            invokeinterface java.util.function.Supplier.get:()Ljava/lang/Object;
            checkcast java.lang.Long
            invokevirtual java.lang.Long.longValue:()J
            lreturn
        end local 0 // com.oracle.truffle.api.test.polyglot.ProxyAPITest$ProxyArrayTest this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/oracle/truffle/api/test/polyglot/ProxyAPITest$ProxyArrayTest;
}
SourceFile: "ProxyAPITest.java"
NestHost: com.oracle.truffle.api.test.polyglot.ProxyAPITest
InnerClasses:
  ProxyArrayTest = com.oracle.truffle.api.test.polyglot.ProxyAPITest$ProxyArrayTest of com.oracle.truffle.api.test.polyglot.ProxyAPITest