abstract class com.oracle.truffle.api.library.test.examples.ArrayStrategy1$ArrayReadNode extends com.oracle.truffle.api.library.test.examples.ArrayStrategy1$ExpressionNode
  minor version: 0
  major version: 59
  flags: flags: (0x0420) ACC_SUPER, ACC_ABSTRACT
  this_class: com.oracle.truffle.api.library.test.examples.ArrayStrategy1$ArrayReadNode
  super_class: com.oracle.truffle.api.library.test.examples.ArrayStrategy1$ExpressionNode
{
  void <init>();
    descriptor: ()V
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.truffle.api.library.test.examples.ArrayStrategy1$ArrayReadNode this
         0: .line 91
            aload 0 /* this */
            invokespecial com.oracle.truffle.api.library.test.examples.ArrayStrategy1$ExpressionNode.<init>:()V
            return
        end local 0 // com.oracle.truffle.api.library.test.examples.ArrayStrategy1$ArrayReadNode this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/truffle/api/library/test/examples/ArrayStrategy1$ArrayReadNode;

  int doBuffer(com.oracle.truffle.api.library.test.examples.ArrayStrategy1$BufferArray, int);
    descriptor: (Lcom/oracle/truffle/api/library/test/examples/ArrayStrategy1$BufferArray;I)I
    flags: (0x0000) 
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // com.oracle.truffle.api.library.test.examples.ArrayStrategy1$ArrayReadNode this
        start local 1 // com.oracle.truffle.api.library.test.examples.ArrayStrategy1$BufferArray array
        start local 2 // int index
         0: .line 95
            aload 1 /* array */
            getfield com.oracle.truffle.api.library.test.examples.ArrayStrategy1$BufferArray.buffer:[I
            iload 2 /* index */
            iaload
            ireturn
        end local 2 // int index
        end local 1 // com.oracle.truffle.api.library.test.examples.ArrayStrategy1$BufferArray array
        end local 0 // com.oracle.truffle.api.library.test.examples.ArrayStrategy1$ArrayReadNode this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0   this  Lcom/oracle/truffle/api/library/test/examples/ArrayStrategy1$ArrayReadNode;
            0    1     1  array  Lcom/oracle/truffle/api/library/test/examples/ArrayStrategy1$BufferArray;
            0    1     2  index  I
    RuntimeVisibleAnnotations: 
      com.oracle.truffle.api.dsl.Specialization()
    MethodParameters:
       Name  Flags
      array  
      index  

  int doSequence(com.oracle.truffle.api.library.test.examples.ArrayStrategy1$SequenceArray, int);
    descriptor: (Lcom/oracle/truffle/api/library/test/examples/ArrayStrategy1$SequenceArray;I)I
    flags: (0x0000) 
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // com.oracle.truffle.api.library.test.examples.ArrayStrategy1$ArrayReadNode this
        start local 1 // com.oracle.truffle.api.library.test.examples.ArrayStrategy1$SequenceArray seq
        start local 2 // int index
         0: .line 100
            aload 1 /* seq */
            getfield com.oracle.truffle.api.library.test.examples.ArrayStrategy1$SequenceArray.start:I
            aload 1 /* seq */
            getfield com.oracle.truffle.api.library.test.examples.ArrayStrategy1$SequenceArray.stride:I
            iload 2 /* index */
            imul
            iadd
            ireturn
        end local 2 // int index
        end local 1 // com.oracle.truffle.api.library.test.examples.ArrayStrategy1$SequenceArray seq
        end local 0 // com.oracle.truffle.api.library.test.examples.ArrayStrategy1$ArrayReadNode this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0   this  Lcom/oracle/truffle/api/library/test/examples/ArrayStrategy1$ArrayReadNode;
            0    1     1    seq  Lcom/oracle/truffle/api/library/test/examples/ArrayStrategy1$SequenceArray;
            0    1     2  index  I
    RuntimeVisibleAnnotations: 
      com.oracle.truffle.api.dsl.Specialization()
    MethodParameters:
       Name  Flags
      seq    
      index  
}
SourceFile: "ArrayStrategy1.java"
NestHost: com.oracle.truffle.api.library.test.examples.ArrayStrategy1
InnerClasses:
  abstract ArrayReadNode = com.oracle.truffle.api.library.test.examples.ArrayStrategy1$ArrayReadNode of com.oracle.truffle.api.library.test.examples.ArrayStrategy1
  final BufferArray = com.oracle.truffle.api.library.test.examples.ArrayStrategy1$BufferArray of com.oracle.truffle.api.library.test.examples.ArrayStrategy1
  abstract ExpressionNode = com.oracle.truffle.api.library.test.examples.ArrayStrategy1$ExpressionNode of com.oracle.truffle.api.library.test.examples.ArrayStrategy1
  final SequenceArray = com.oracle.truffle.api.library.test.examples.ArrayStrategy1$SequenceArray of com.oracle.truffle.api.library.test.examples.ArrayStrategy1
    RuntimeInvisibleAnnotations: 
      com.oracle.truffle.api.dsl.NodeChildren(value = {com.oracle.truffle.api.dsl.NodeChild(), com.oracle.truffle.api.dsl.NodeChild()})