public class org.apache.cassandra.db.aggregation.GroupingState$Serializer
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.apache.cassandra.db.aggregation.GroupingState$Serializer
  super_class: java.lang.Object
{
  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.cassandra.db.aggregation.GroupingState$Serializer this
         0: .line 96
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
            return
        end local 0 // org.apache.cassandra.db.aggregation.GroupingState$Serializer this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/cassandra/db/aggregation/GroupingState$Serializer;

  public void serialize(org.apache.cassandra.db.aggregation.GroupingState, org.apache.cassandra.io.util.DataOutputPlus, int, org.apache.cassandra.db.ClusteringComparator);
    descriptor: (Lorg/apache/cassandra/db/aggregation/GroupingState;Lorg/apache/cassandra/io/util/DataOutputPlus;ILorg/apache/cassandra/db/ClusteringComparator;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=7, args_size=5
        start local 0 // org.apache.cassandra.db.aggregation.GroupingState$Serializer this
        start local 1 // org.apache.cassandra.db.aggregation.GroupingState state
        start local 2 // org.apache.cassandra.io.util.DataOutputPlus out
        start local 3 // int version
        start local 4 // org.apache.cassandra.db.ClusteringComparator comparator
         0: .line 100
            aload 1 /* state */
            getfield org.apache.cassandra.db.aggregation.GroupingState.partitionKey:Ljava/nio/ByteBuffer;
            ifnull 1
            iconst_1
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_0
      StackMap locals:
      StackMap stack: int
         2: istore 5 /* hasPartitionKey */
        start local 5 // boolean hasPartitionKey
         3: .line 101
            aload 2 /* out */
            iload 5 /* hasPartitionKey */
            invokeinterface org.apache.cassandra.io.util.DataOutputPlus.writeBoolean:(Z)V
         4: .line 102
            iload 5 /* hasPartitionKey */
            ifeq 10
         5: .line 104
            aload 1 /* state */
            getfield org.apache.cassandra.db.aggregation.GroupingState.partitionKey:Ljava/nio/ByteBuffer;
            aload 2 /* out */
            invokestatic org.apache.cassandra.utils.ByteBufferUtil.writeWithVIntLength:(Ljava/nio/ByteBuffer;Lorg/apache/cassandra/io/util/DataOutputPlus;)V
         6: .line 105
            aload 1 /* state */
            invokevirtual org.apache.cassandra.db.aggregation.GroupingState.hasClustering:()Z
            istore 6 /* hasClustering */
        start local 6 // boolean hasClustering
         7: .line 106
            aload 2 /* out */
            iload 6 /* hasClustering */
            invokeinterface org.apache.cassandra.io.util.DataOutputPlus.writeBoolean:(Z)V
         8: .line 107
            iload 6 /* hasClustering */
            ifeq 10
         9: .line 108
            getstatic org.apache.cassandra.db.Clustering.serializer:Lorg/apache/cassandra/db/Clustering$Serializer;
            aload 1 /* state */
            getfield org.apache.cassandra.db.aggregation.GroupingState.clustering:Lorg/apache/cassandra/db/Clustering;
            aload 2 /* out */
            iload 3 /* version */
            aload 4 /* comparator */
            invokevirtual org.apache.cassandra.db.ClusteringComparator.subtypes:()Ljava/util/List;
            invokevirtual org.apache.cassandra.db.Clustering$Serializer.serialize:(Lorg/apache/cassandra/db/Clustering;Lorg/apache/cassandra/io/util/DataOutputPlus;ILjava/util/List;)V
        end local 6 // boolean hasClustering
        10: .line 110
      StackMap locals: int
      StackMap stack:
            return
        end local 5 // boolean hasPartitionKey
        end local 4 // org.apache.cassandra.db.ClusteringComparator comparator
        end local 3 // int version
        end local 2 // org.apache.cassandra.io.util.DataOutputPlus out
        end local 1 // org.apache.cassandra.db.aggregation.GroupingState state
        end local 0 // org.apache.cassandra.db.aggregation.GroupingState$Serializer this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   11     0             this  Lorg/apache/cassandra/db/aggregation/GroupingState$Serializer;
            0   11     1            state  Lorg/apache/cassandra/db/aggregation/GroupingState;
            0   11     2              out  Lorg/apache/cassandra/io/util/DataOutputPlus;
            0   11     3          version  I
            0   11     4       comparator  Lorg/apache/cassandra/db/ClusteringComparator;
            3   11     5  hasPartitionKey  Z
            7   10     6    hasClustering  Z
    Exceptions:
      throws java.io.IOException
    MethodParameters:
            Name  Flags
      state       
      out         
      version     
      comparator  

  public org.apache.cassandra.db.aggregation.GroupingState deserialize(org.apache.cassandra.io.util.DataInputPlus, int, org.apache.cassandra.db.ClusteringComparator);
    descriptor: (Lorg/apache/cassandra/io/util/DataInputPlus;ILorg/apache/cassandra/db/ClusteringComparator;)Lorg/apache/cassandra/db/aggregation/GroupingState;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=6, args_size=4
        start local 0 // org.apache.cassandra.db.aggregation.GroupingState$Serializer this
        start local 1 // org.apache.cassandra.io.util.DataInputPlus in
        start local 2 // int version
        start local 3 // org.apache.cassandra.db.ClusteringComparator comparator
         0: .line 114
            aload 1 /* in */
            invokeinterface org.apache.cassandra.io.util.DataInputPlus.readBoolean:()Z
            ifne 2
         1: .line 115
            getstatic org.apache.cassandra.db.aggregation.GroupingState.EMPTY_STATE:Lorg/apache/cassandra/db/aggregation/GroupingState;
            areturn
         2: .line 117
      StackMap locals:
      StackMap stack:
            aload 1 /* in */
            invokestatic org.apache.cassandra.utils.ByteBufferUtil.readWithVIntLength:(Lorg/apache/cassandra/io/util/DataInputPlus;)Ljava/nio/ByteBuffer;
            astore 4 /* partitionKey */
        start local 4 // java.nio.ByteBuffer partitionKey
         3: .line 118
            aconst_null
            astore 5 /* clustering */
        start local 5 // org.apache.cassandra.db.Clustering clustering
         4: .line 119
            aload 1 /* in */
            invokeinterface org.apache.cassandra.io.util.DataInputPlus.readBoolean:()Z
            ifeq 6
         5: .line 120
            getstatic org.apache.cassandra.db.Clustering.serializer:Lorg/apache/cassandra/db/Clustering$Serializer;
            aload 1 /* in */
            iload 2 /* version */
            aload 3 /* comparator */
            invokevirtual org.apache.cassandra.db.ClusteringComparator.subtypes:()Ljava/util/List;
            invokevirtual org.apache.cassandra.db.Clustering$Serializer.deserialize:(Lorg/apache/cassandra/io/util/DataInputPlus;ILjava/util/List;)Lorg/apache/cassandra/db/Clustering;
            astore 5 /* clustering */
         6: .line 122
      StackMap locals: java.nio.ByteBuffer org.apache.cassandra.db.Clustering
      StackMap stack:
            new org.apache.cassandra.db.aggregation.GroupingState
            dup
            aload 4 /* partitionKey */
            aload 5 /* clustering */
            invokespecial org.apache.cassandra.db.aggregation.GroupingState.<init>:(Ljava/nio/ByteBuffer;Lorg/apache/cassandra/db/Clustering;)V
            areturn
        end local 5 // org.apache.cassandra.db.Clustering clustering
        end local 4 // java.nio.ByteBuffer partitionKey
        end local 3 // org.apache.cassandra.db.ClusteringComparator comparator
        end local 2 // int version
        end local 1 // org.apache.cassandra.io.util.DataInputPlus in
        end local 0 // org.apache.cassandra.db.aggregation.GroupingState$Serializer this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    7     0          this  Lorg/apache/cassandra/db/aggregation/GroupingState$Serializer;
            0    7     1            in  Lorg/apache/cassandra/io/util/DataInputPlus;
            0    7     2       version  I
            0    7     3    comparator  Lorg/apache/cassandra/db/ClusteringComparator;
            3    7     4  partitionKey  Ljava/nio/ByteBuffer;
            4    7     5    clustering  Lorg/apache/cassandra/db/Clustering;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
            Name  Flags
      in          
      version     
      comparator  

  public long serializedSize(org.apache.cassandra.db.aggregation.GroupingState, int, org.apache.cassandra.db.ClusteringComparator);
    descriptor: (Lorg/apache/cassandra/db/aggregation/GroupingState;ILorg/apache/cassandra/db/ClusteringComparator;)J
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=8, args_size=4
        start local 0 // org.apache.cassandra.db.aggregation.GroupingState$Serializer this
        start local 1 // org.apache.cassandra.db.aggregation.GroupingState state
        start local 2 // int version
        start local 3 // org.apache.cassandra.db.ClusteringComparator comparator
         0: .line 127
            aload 1 /* state */
            getfield org.apache.cassandra.db.aggregation.GroupingState.partitionKey:Ljava/nio/ByteBuffer;
            ifnull 1
            iconst_1
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_0
      StackMap locals:
      StackMap stack: int
         2: istore 4 /* hasPartitionKey */
        start local 4 // boolean hasPartitionKey
         3: .line 128
            iload 4 /* hasPartitionKey */
            invokestatic org.apache.cassandra.db.TypeSizes.sizeof:(Z)I
            i2l
            lstore 5 /* size */
        start local 5 // long size
         4: .line 129
            iload 4 /* hasPartitionKey */
            ifeq 10
         5: .line 131
            lload 5 /* size */
            aload 1 /* state */
            getfield org.apache.cassandra.db.aggregation.GroupingState.partitionKey:Ljava/nio/ByteBuffer;
            invokestatic org.apache.cassandra.utils.ByteBufferUtil.serializedSizeWithVIntLength:(Ljava/nio/ByteBuffer;)I
            i2l
            ladd
            lstore 5 /* size */
         6: .line 132
            aload 1 /* state */
            invokevirtual org.apache.cassandra.db.aggregation.GroupingState.hasClustering:()Z
            istore 7 /* hasClustering */
        start local 7 // boolean hasClustering
         7: .line 133
            lload 5 /* size */
            iload 7 /* hasClustering */
            invokestatic org.apache.cassandra.db.TypeSizes.sizeof:(Z)I
            i2l
            ladd
            lstore 5 /* size */
         8: .line 134
            iload 7 /* hasClustering */
            ifeq 10
         9: .line 136
            lload 5 /* size */
            getstatic org.apache.cassandra.db.Clustering.serializer:Lorg/apache/cassandra/db/Clustering$Serializer;
            aload 1 /* state */
            getfield org.apache.cassandra.db.aggregation.GroupingState.clustering:Lorg/apache/cassandra/db/Clustering;
            iload 2 /* version */
            aload 3 /* comparator */
            invokevirtual org.apache.cassandra.db.ClusteringComparator.subtypes:()Ljava/util/List;
            invokevirtual org.apache.cassandra.db.Clustering$Serializer.serializedSize:(Lorg/apache/cassandra/db/Clustering;ILjava/util/List;)J
            ladd
            lstore 5 /* size */
        end local 7 // boolean hasClustering
        10: .line 139
      StackMap locals: int long
      StackMap stack:
            lload 5 /* size */
            lreturn
        end local 5 // long size
        end local 4 // boolean hasPartitionKey
        end local 3 // org.apache.cassandra.db.ClusteringComparator comparator
        end local 2 // int version
        end local 1 // org.apache.cassandra.db.aggregation.GroupingState state
        end local 0 // org.apache.cassandra.db.aggregation.GroupingState$Serializer this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   11     0             this  Lorg/apache/cassandra/db/aggregation/GroupingState$Serializer;
            0   11     1            state  Lorg/apache/cassandra/db/aggregation/GroupingState;
            0   11     2          version  I
            0   11     3       comparator  Lorg/apache/cassandra/db/ClusteringComparator;
            3   11     4  hasPartitionKey  Z
            4   11     5             size  J
            7   10     7    hasClustering  Z
    MethodParameters:
            Name  Flags
      state       
      version     
      comparator  
}
SourceFile: "GroupingState.java"
NestHost: org.apache.cassandra.db.aggregation.GroupingState
InnerClasses:
  public Serializer = org.apache.cassandra.db.Clustering$Serializer of org.apache.cassandra.db.Clustering
  public Serializer = org.apache.cassandra.db.aggregation.GroupingState$Serializer of org.apache.cassandra.db.aggregation.GroupingState