class org.apache.cassandra.utils.memory.HeapPool$Allocator extends org.apache.cassandra.utils.memory.MemtableBufferAllocator
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: org.apache.cassandra.utils.memory.HeapPool$Allocator
  super_class: org.apache.cassandra.utils.memory.MemtableBufferAllocator
{
  private static final org.apache.cassandra.utils.memory.EnsureOnHeap ENSURE_NOOP;
    descriptor: Lorg/apache/cassandra/utils/memory/EnsureOnHeap;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=0, args_size=0
         0: .line 39
            new org.apache.cassandra.utils.memory.EnsureOnHeap$NoOp
            dup
            invokespecial org.apache.cassandra.utils.memory.EnsureOnHeap$NoOp.<init>:()V
            putstatic org.apache.cassandra.utils.memory.HeapPool$Allocator.ENSURE_NOOP:Lorg/apache/cassandra/utils/memory/EnsureOnHeap;
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  void <init>(org.apache.cassandra.utils.memory.HeapPool);
    descriptor: (Lorg/apache/cassandra/utils/memory/HeapPool;)V
    flags: (0x0000) 
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.apache.cassandra.utils.memory.HeapPool$Allocator this
        start local 1 // org.apache.cassandra.utils.memory.HeapPool pool
         0: .line 42
            aload 0 /* this */
            aload 1 /* pool */
            getfield org.apache.cassandra.utils.memory.HeapPool.onHeap:Lorg/apache/cassandra/utils/memory/MemtablePool$SubPool;
            invokevirtual org.apache.cassandra.utils.memory.MemtablePool$SubPool.newAllocator:()Lorg/apache/cassandra/utils/memory/MemtableAllocator$SubAllocator;
            aload 1 /* pool */
            getfield org.apache.cassandra.utils.memory.HeapPool.offHeap:Lorg/apache/cassandra/utils/memory/MemtablePool$SubPool;
            invokevirtual org.apache.cassandra.utils.memory.MemtablePool$SubPool.newAllocator:()Lorg/apache/cassandra/utils/memory/MemtableAllocator$SubAllocator;
            invokespecial org.apache.cassandra.utils.memory.MemtableBufferAllocator.<init>:(Lorg/apache/cassandra/utils/memory/MemtableAllocator$SubAllocator;Lorg/apache/cassandra/utils/memory/MemtableAllocator$SubAllocator;)V
         1: .line 43
            return
        end local 1 // org.apache.cassandra.utils.memory.HeapPool pool
        end local 0 // org.apache.cassandra.utils.memory.HeapPool$Allocator this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/apache/cassandra/utils/memory/HeapPool$Allocator;
            0    2     1  pool  Lorg/apache/cassandra/utils/memory/HeapPool;
    MethodParameters:
      Name  Flags
      pool  

  public java.nio.ByteBuffer allocate(int, org.apache.cassandra.utils.concurrent.OpOrder$Group);
    descriptor: (ILorg/apache/cassandra/utils/concurrent/OpOrder$Group;)Ljava/nio/ByteBuffer;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.apache.cassandra.utils.memory.HeapPool$Allocator this
        start local 1 // int size
        start local 2 // org.apache.cassandra.utils.concurrent.OpOrder$Group opGroup
         0: .line 47
            aload 0 /* this */
            invokespecial org.apache.cassandra.utils.memory.MemtableBufferAllocator.onHeap:()Lorg/apache/cassandra/utils/memory/MemtableAllocator$SubAllocator;
            iload 1 /* size */
            i2l
            aload 2 /* opGroup */
            invokevirtual org.apache.cassandra.utils.memory.MemtableAllocator$SubAllocator.allocate:(JLorg/apache/cassandra/utils/concurrent/OpOrder$Group;)V
         1: .line 48
            iload 1 /* size */
            invokestatic java.nio.ByteBuffer.allocate:(I)Ljava/nio/ByteBuffer;
            areturn
        end local 2 // org.apache.cassandra.utils.concurrent.OpOrder$Group opGroup
        end local 1 // int size
        end local 0 // org.apache.cassandra.utils.memory.HeapPool$Allocator this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lorg/apache/cassandra/utils/memory/HeapPool$Allocator;
            0    2     1     size  I
            0    2     2  opGroup  Lorg/apache/cassandra/utils/concurrent/OpOrder$Group;
    MethodParameters:
         Name  Flags
      size     
      opGroup  

  public org.apache.cassandra.utils.memory.EnsureOnHeap ensureOnHeap();
    descriptor: ()Lorg/apache/cassandra/utils/memory/EnsureOnHeap;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.cassandra.utils.memory.HeapPool$Allocator this
         0: .line 53
            getstatic org.apache.cassandra.utils.memory.HeapPool$Allocator.ENSURE_NOOP:Lorg/apache/cassandra/utils/memory/EnsureOnHeap;
            areturn
        end local 0 // org.apache.cassandra.utils.memory.HeapPool$Allocator this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/cassandra/utils/memory/HeapPool$Allocator;
}
SourceFile: "HeapPool.java"
NestHost: org.apache.cassandra.utils.memory.HeapPool
InnerClasses:
  public final Group = org.apache.cassandra.utils.concurrent.OpOrder$Group of org.apache.cassandra.utils.concurrent.OpOrder
  NoOp = org.apache.cassandra.utils.memory.EnsureOnHeap$NoOp of org.apache.cassandra.utils.memory.EnsureOnHeap
  private Allocator = org.apache.cassandra.utils.memory.HeapPool$Allocator of org.apache.cassandra.utils.memory.HeapPool
  public final SubAllocator = org.apache.cassandra.utils.memory.MemtableAllocator$SubAllocator of org.apache.cassandra.utils.memory.MemtableAllocator
  public SubPool = org.apache.cassandra.utils.memory.MemtablePool$SubPool of org.apache.cassandra.utils.memory.MemtablePool