public class org.h2.mvstore.type.StringDataType implements org.h2.mvstore.type.DataType
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.h2.mvstore.type.StringDataType
  super_class: java.lang.Object
{
  public static final org.h2.mvstore.type.StringDataType INSTANCE;
    descriptor: Lorg/h2/mvstore/type/StringDataType;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=0, args_size=0
         0: .line 17
            new org.h2.mvstore.type.StringDataType
            dup
            invokespecial org.h2.mvstore.type.StringDataType.<init>:()V
            putstatic org.h2.mvstore.type.StringDataType.INSTANCE:Lorg/h2/mvstore/type/StringDataType;
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.h2.mvstore.type.StringDataType this
         0: .line 15
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
            return
        end local 0 // org.h2.mvstore.type.StringDataType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/h2/mvstore/type/StringDataType;

  public int compare(java.lang.Object, java.lang.Object);
    descriptor: (Ljava/lang/Object;Ljava/lang/Object;)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // org.h2.mvstore.type.StringDataType this
        start local 1 // java.lang.Object a
        start local 2 // java.lang.Object b
         0: .line 21
            aload 1 /* a */
            invokevirtual java.lang.Object.toString:()Ljava/lang/String;
            aload 2 /* b */
            invokevirtual java.lang.Object.toString:()Ljava/lang/String;
            invokevirtual java.lang.String.compareTo:(Ljava/lang/String;)I
            ireturn
        end local 2 // java.lang.Object b
        end local 1 // java.lang.Object a
        end local 0 // org.h2.mvstore.type.StringDataType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/h2/mvstore/type/StringDataType;
            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=3, locals=2, args_size=2
        start local 0 // org.h2.mvstore.type.StringDataType this
        start local 1 // java.lang.Object obj
         0: .line 26
            bipush 24
            iconst_2
            aload 1 /* obj */
            invokevirtual java.lang.Object.toString:()Ljava/lang/String;
            invokevirtual java.lang.String.length:()I
            imul
            iadd
            ireturn
        end local 1 // java.lang.Object obj
        end local 0 // org.h2.mvstore.type.StringDataType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/h2/mvstore/type/StringDataType;
            0    1     1   obj  Ljava/lang/Object;
    MethodParameters:
      Name  Flags
      obj   

  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.type.StringDataType 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 31
            iconst_0
            istore 5 /* i */
        start local 5 // int i
         1: goto 4
         2: .line 32
      StackMap locals: int
      StackMap stack:
            aload 2 /* obj */
            iload 5 /* i */
            aload 0 /* this */
            aload 1 /* buff */
            invokevirtual org.h2.mvstore.type.StringDataType.read:(Ljava/nio/ByteBuffer;)Ljava/lang/String;
            aastore
         3: .line 31
            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 34
            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.type.StringDataType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Lorg/h2/mvstore/type/StringDataType;
            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   

  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.type.StringDataType 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 38
            iconst_0
            istore 5 /* i */
        start local 5 // int i
         1: goto 4
         2: .line 39
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            aload 1 /* buff */
            aload 2 /* obj */
            iload 5 /* i */
            aaload
            invokevirtual org.h2.mvstore.type.StringDataType.write:(Lorg/h2/mvstore/WriteBuffer;Ljava/lang/Object;)V
         3: .line 38
            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 41
            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.type.StringDataType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Lorg/h2/mvstore/type/StringDataType;
            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.String read(java.nio.ByteBuffer);
    descriptor: (Ljava/nio/ByteBuffer;)Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // org.h2.mvstore.type.StringDataType this
        start local 1 // java.nio.ByteBuffer buff
         0: .line 45
            aload 1 /* buff */
            invokestatic org.h2.mvstore.DataUtils.readVarInt:(Ljava/nio/ByteBuffer;)I
            istore 2 /* len */
        start local 2 // int len
         1: .line 46
            aload 1 /* buff */
            iload 2 /* len */
            invokestatic org.h2.mvstore.DataUtils.readString:(Ljava/nio/ByteBuffer;I)Ljava/lang/String;
            areturn
        end local 2 // int len
        end local 1 // java.nio.ByteBuffer buff
        end local 0 // org.h2.mvstore.type.StringDataType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/h2/mvstore/type/StringDataType;
            0    2     1  buff  Ljava/nio/ByteBuffer;
            1    2     2   len  I
    MethodParameters:
      Name  Flags
      buff  

  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=3, locals=5, args_size=3
        start local 0 // org.h2.mvstore.type.StringDataType this
        start local 1 // org.h2.mvstore.WriteBuffer buff
        start local 2 // java.lang.Object obj
         0: .line 51
            aload 2 /* obj */
            invokevirtual java.lang.Object.toString:()Ljava/lang/String;
            astore 3 /* s */
        start local 3 // java.lang.String s
         1: .line 52
            aload 3 /* s */
            invokevirtual java.lang.String.length:()I
            istore 4 /* len */
        start local 4 // int len
         2: .line 53
            aload 1 /* buff */
            iload 4 /* len */
            invokevirtual org.h2.mvstore.WriteBuffer.putVarInt:(I)Lorg/h2/mvstore/WriteBuffer;
            aload 3 /* s */
            iload 4 /* len */
            invokevirtual org.h2.mvstore.WriteBuffer.putStringData:(Ljava/lang/String;I)Lorg/h2/mvstore/WriteBuffer;
            pop
         3: .line 54
            return
        end local 4 // int len
        end local 3 // java.lang.String s
        end local 2 // java.lang.Object obj
        end local 1 // org.h2.mvstore.WriteBuffer buff
        end local 0 // org.h2.mvstore.type.StringDataType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lorg/h2/mvstore/type/StringDataType;
            0    4     1  buff  Lorg/h2/mvstore/WriteBuffer;
            0    4     2   obj  Ljava/lang/Object;
            1    4     3     s  Ljava/lang/String;
            2    4     4   len  I
    MethodParameters:
      Name  Flags
      buff  
      obj   

  public java.lang.Object read(java.nio.ByteBuffer);
    descriptor: (Ljava/nio/ByteBuffer;)Ljava/lang/Object;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
         0: .line 1
            aload 0
            aload 1
            invokevirtual org.h2.mvstore.type.StringDataType.read:(Ljava/nio/ByteBuffer;)Ljava/lang/String;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
}
SourceFile: "StringDataType.java"