class at.yawk.numaec.BumpPointerRegionAllocator$Region
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: at.yawk.numaec.BumpPointerRegionAllocator$Region
  super_class: java.lang.Object
{
  private final at.yawk.numaec.LargeByteBuffer buffer;
    descriptor: Lat/yawk/numaec/LargeByteBuffer;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private long position;
    descriptor: J
    flags: (0x0002) ACC_PRIVATE

  private int openCount;
    descriptor: I
    flags: (0x0002) ACC_PRIVATE

  void <init>(at.yawk.numaec.LargeByteBuffer);
    descriptor: (Lat/yawk/numaec/LargeByteBuffer;)V
    flags: (0x0000) 
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // at.yawk.numaec.BumpPointerRegionAllocator$Region this
        start local 1 // at.yawk.numaec.LargeByteBuffer buffer
         0: .line 107
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 104
            aload 0 /* this */
            lconst_0
            putfield at.yawk.numaec.BumpPointerRegionAllocator$Region.position:J
         2: .line 105
            aload 0 /* this */
            iconst_0
            putfield at.yawk.numaec.BumpPointerRegionAllocator$Region.openCount:I
         3: .line 108
            aload 0 /* this */
            aload 1 /* buffer */
            putfield at.yawk.numaec.BumpPointerRegionAllocator$Region.buffer:Lat/yawk/numaec/LargeByteBuffer;
         4: .line 109
            return
        end local 1 // at.yawk.numaec.LargeByteBuffer buffer
        end local 0 // at.yawk.numaec.BumpPointerRegionAllocator$Region this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    5     0    this  Lat/yawk/numaec/BumpPointerRegionAllocator$Region;
            0    5     1  buffer  Lat/yawk/numaec/LargeByteBuffer;
    MethodParameters:
        Name  Flags
      buffer  

  long remaining();
    descriptor: ()J
    flags: (0x0000) 
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // at.yawk.numaec.BumpPointerRegionAllocator$Region this
         0: .line 112
            aload 0 /* this */
            getfield at.yawk.numaec.BumpPointerRegionAllocator$Region.buffer:Lat/yawk/numaec/LargeByteBuffer;
            invokeinterface at.yawk.numaec.LargeByteBuffer.size:()J
            aload 0 /* this */
            getfield at.yawk.numaec.BumpPointerRegionAllocator$Region.position:J
            lsub
            lreturn
        end local 0 // at.yawk.numaec.BumpPointerRegionAllocator$Region this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lat/yawk/numaec/BumpPointerRegionAllocator$Region;

  at.yawk.numaec.LargeByteBuffer allocate(long, long);
    descriptor: (JJ)Lat/yawk/numaec/LargeByteBuffer;
    flags: (0x0000) 
    Code:
      stack=8, locals=9, args_size=3
        start local 0 // at.yawk.numaec.BumpPointerRegionAllocator$Region this
        start local 1 // long size
        start local 3 // long alignment
         0: .line 117
            aload 0 /* this */
            getfield at.yawk.numaec.BumpPointerRegionAllocator$Region.position:J
            lload 3 /* alignment */
            invokestatic at.yawk.numaec.BumpPointerRegionAllocator.alignUp:(JJ)J
            lstore 5 /* start */
        start local 5 // long start
         1: .line 118
            lload 5 /* start */
            lload 1 /* size */
            ladd
            lstore 7 /* end */
        start local 7 // long end
         2: .line 119
            lload 7 /* end */
            aload 0 /* this */
            getfield at.yawk.numaec.BumpPointerRegionAllocator$Region.buffer:Lat/yawk/numaec/LargeByteBuffer;
            invokeinterface at.yawk.numaec.LargeByteBuffer.size:()J
            lcmp
            ifle 4
         3: .line 120
            aconst_null
            areturn
         4: .line 122
      StackMap locals: long long
      StackMap stack:
            aload 0 /* this */
            dup
            getfield at.yawk.numaec.BumpPointerRegionAllocator$Region.openCount:I
            iconst_1
            iadd
            putfield at.yawk.numaec.BumpPointerRegionAllocator$Region.openCount:I
         5: .line 123
            aload 0 /* this */
            lload 7 /* end */
            putfield at.yawk.numaec.BumpPointerRegionAllocator$Region.position:J
         6: .line 124
            new at.yawk.numaec.BumpPointerRegionAllocator$Region$1
            dup
            aload 0 /* this */
            aload 0 /* this */
            getfield at.yawk.numaec.BumpPointerRegionAllocator$Region.buffer:Lat/yawk/numaec/LargeByteBuffer;
            lload 5 /* start */
            lload 1 /* size */
            invokespecial at.yawk.numaec.BumpPointerRegionAllocator$Region$1.<init>:(Lat/yawk/numaec/BumpPointerRegionAllocator$Region;Lat/yawk/numaec/LargeByteBuffer;JJ)V
            areturn
        end local 7 // long end
        end local 5 // long start
        end local 3 // long alignment
        end local 1 // long size
        end local 0 // at.yawk.numaec.BumpPointerRegionAllocator$Region this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    7     0       this  Lat/yawk/numaec/BumpPointerRegionAllocator$Region;
            0    7     1       size  J
            0    7     3  alignment  J
            1    7     5      start  J
            2    7     7        end  J
    MethodParameters:
           Name  Flags
      size       
      alignment  
}
SourceFile: "BumpPointerRegionAllocator.java"
NestHost: at.yawk.numaec.BumpPointerRegionAllocator
InnerClasses:
  private Region = at.yawk.numaec.BumpPointerRegionAllocator$Region of at.yawk.numaec.BumpPointerRegionAllocator
  at.yawk.numaec.BumpPointerRegionAllocator$Region$1