class org.h2.mvstore.MVStoreTool$GenericDataType implements org.h2.mvstore.type.DataType
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: org.h2.mvstore.MVStoreTool$GenericDataType
  super_class: java.lang.Object
{
  void <init>();
    descriptor: ()V
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.h2.mvstore.MVStoreTool$GenericDataType this
         0: .line 681
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
            return
        end local 0 // org.h2.mvstore.MVStoreTool$GenericDataType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/h2/mvstore/MVStoreTool$GenericDataType;

  public int compare(java.lang.Object, java.lang.Object);
    descriptor: (Ljava/lang/Object;Ljava/lang/Object;)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=3, args_size=3
        start local 0 // org.h2.mvstore.MVStoreTool$GenericDataType this
        start local 1 // java.lang.Object a
        start local 2 // java.lang.Object b
         0: .line 685
            ldc "Can not compare"
            invokestatic org.h2.mvstore.DataUtils.newUnsupportedOperationException:(Ljava/lang/String;)Ljava/lang/UnsupportedOperationException;
            athrow
        end local 2 // java.lang.Object b
        end local 1 // java.lang.Object a
        end local 0 // org.h2.mvstore.MVStoreTool$GenericDataType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/h2/mvstore/MVStoreTool$GenericDataType;
            0    1     1     a  Ljava/lang/Object;
            0    1     2     b  Ljava/lang/Object;
    MethodParameters:
      Name  Flags
      a     
      b     

  public int getMemory(java.lang.Object);
    descriptor: (Ljava/lang/Object;)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.h2.mvstore.MVStoreTool$GenericDataType this
        start local 1 // java.lang.Object obj
         0: .line 690
            aload 1 /* obj */
            ifnonnull 1
            iconst_0
            goto 2
      StackMap locals:
      StackMap stack:
         1: aload 1 /* obj */
            checkcast byte[]
            arraylength
            bipush 8
            imul
      StackMap locals:
      StackMap stack: int
         2: ireturn
        end local 1 // java.lang.Object obj
        end local 0 // org.h2.mvstore.MVStoreTool$GenericDataType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/h2/mvstore/MVStoreTool$GenericDataType;
            0    3     1   obj  Ljava/lang/Object;
    MethodParameters:
      Name  Flags
      obj   

  public void write(org.h2.mvstore.WriteBuffer, java.lang.Object);
    descriptor: (Lorg/h2/mvstore/WriteBuffer;Ljava/lang/Object;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // org.h2.mvstore.MVStoreTool$GenericDataType this
        start local 1 // org.h2.mvstore.WriteBuffer buff
        start local 2 // java.lang.Object obj
         0: .line 695
            aload 2 /* obj */
            ifnull 2
         1: .line 696
            aload 1 /* buff */
            aload 2 /* obj */
            checkcast byte[]
            invokevirtual org.h2.mvstore.WriteBuffer.put:([B)Lorg/h2/mvstore/WriteBuffer;
            pop
         2: .line 698
      StackMap locals:
      StackMap stack:
            return
        end local 2 // java.lang.Object obj
        end local 1 // org.h2.mvstore.WriteBuffer buff
        end local 0 // org.h2.mvstore.MVStoreTool$GenericDataType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/h2/mvstore/MVStoreTool$GenericDataType;
            0    3     1  buff  Lorg/h2/mvstore/WriteBuffer;
            0    3     2   obj  Ljava/lang/Object;
    MethodParameters:
      Name  Flags
      buff  
      obj   

  public void write(org.h2.mvstore.WriteBuffer, java.lang.Object[], int, boolean);
    descriptor: (Lorg/h2/mvstore/WriteBuffer;[Ljava/lang/Object;IZ)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=6, args_size=5
        start local 0 // org.h2.mvstore.MVStoreTool$GenericDataType this
        start local 1 // org.h2.mvstore.WriteBuffer buff
        start local 2 // java.lang.Object[] obj
        start local 3 // int len
        start local 4 // boolean key
         0: .line 702
            iconst_0
            istore 5 /* i */
        start local 5 // int i
         1: goto 4
         2: .line 703
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            aload 1 /* buff */
            aload 2 /* obj */
            iload 5 /* i */
            aaload
            invokevirtual org.h2.mvstore.MVStoreTool$GenericDataType.write:(Lorg/h2/mvstore/WriteBuffer;Ljava/lang/Object;)V
         3: .line 702
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
         4: iload 5 /* i */
            iload 3 /* len */
            if_icmplt 2
        end local 5 // int i
         5: .line 705
            return
        end local 4 // boolean key
        end local 3 // int len
        end local 2 // java.lang.Object[] obj
        end local 1 // org.h2.mvstore.WriteBuffer buff
        end local 0 // org.h2.mvstore.MVStoreTool$GenericDataType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Lorg/h2/mvstore/MVStoreTool$GenericDataType;
            0    6     1  buff  Lorg/h2/mvstore/WriteBuffer;
            0    6     2   obj  [Ljava/lang/Object;
            0    6     3   len  I
            0    6     4   key  Z
            1    5     5     i  I
    MethodParameters:
      Name  Flags
      buff  
      obj   
      len   
      key   

  public java.lang.Object read(java.nio.ByteBuffer);
    descriptor: (Ljava/nio/ByteBuffer;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=4, args_size=2
        start local 0 // org.h2.mvstore.MVStoreTool$GenericDataType this
        start local 1 // java.nio.ByteBuffer buff
         0: .line 709
            aload 1 /* buff */
            invokevirtual java.nio.ByteBuffer.remaining:()I
            istore 2 /* len */
        start local 2 // int len
         1: .line 710
            iload 2 /* len */
            ifne 3
         2: .line 711
            aconst_null
            areturn
         3: .line 713
      StackMap locals: int
      StackMap stack:
            iload 2 /* len */
            newarray 8
            astore 3 /* data */
        start local 3 // byte[] data
         4: .line 714
            aload 1 /* buff */
            aload 3 /* data */
            invokevirtual java.nio.ByteBuffer.get:([B)Ljava/nio/ByteBuffer;
            pop
         5: .line 715
            aload 3 /* data */
            areturn
        end local 3 // byte[] data
        end local 2 // int len
        end local 1 // java.nio.ByteBuffer buff
        end local 0 // org.h2.mvstore.MVStoreTool$GenericDataType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Lorg/h2/mvstore/MVStoreTool$GenericDataType;
            0    6     1  buff  Ljava/nio/ByteBuffer;
            1    6     2   len  I
            4    6     3  data  [B
    MethodParameters:
      Name  Flags
      buff  

  public void read(java.nio.ByteBuffer, java.lang.Object[], int, boolean);
    descriptor: (Ljava/nio/ByteBuffer;[Ljava/lang/Object;IZ)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=6, args_size=5
        start local 0 // org.h2.mvstore.MVStoreTool$GenericDataType this
        start local 1 // java.nio.ByteBuffer buff
        start local 2 // java.lang.Object[] obj
        start local 3 // int len
        start local 4 // boolean key
         0: .line 720
            iconst_0
            istore 5 /* i */
        start local 5 // int i
         1: goto 4
         2: .line 721
      StackMap locals: int
      StackMap stack:
            aload 2 /* obj */
            iload 5 /* i */
            aload 0 /* this */
            aload 1 /* buff */
            invokevirtual org.h2.mvstore.MVStoreTool$GenericDataType.read:(Ljava/nio/ByteBuffer;)Ljava/lang/Object;
            aastore
         3: .line 720
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
         4: iload 5 /* i */
            iload 3 /* len */
            if_icmplt 2
        end local 5 // int i
         5: .line 723
            return
        end local 4 // boolean key
        end local 3 // int len
        end local 2 // java.lang.Object[] obj
        end local 1 // java.nio.ByteBuffer buff
        end local 0 // org.h2.mvstore.MVStoreTool$GenericDataType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Lorg/h2/mvstore/MVStoreTool$GenericDataType;
            0    6     1  buff  Ljava/nio/ByteBuffer;
            0    6     2   obj  [Ljava/lang/Object;
            0    6     3   len  I
            0    6     4   key  Z
            1    5     5     i  I
    MethodParameters:
      Name  Flags
      buff  
      obj   
      len   
      key   
}
SourceFile: "MVStoreTool.java"
NestHost: org.h2.mvstore.MVStoreTool
InnerClasses:
  GenericDataType = org.h2.mvstore.MVStoreTool$GenericDataType of org.h2.mvstore.MVStoreTool