public abstract class com.datastax.oss.driver.internal.core.type.codec.extras.array.AbstractPrimitiveListToArrayCodec<PrimitiveArrayT> extends com.datastax.oss.driver.internal.core.type.codec.extras.array.AbstractListToArrayCodec<PrimitiveArrayT>
  minor version: 0
  major version: 59
  flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
  this_class: com.datastax.oss.driver.internal.core.type.codec.extras.array.AbstractPrimitiveListToArrayCodec
  super_class: com.datastax.oss.driver.internal.core.type.codec.extras.array.AbstractListToArrayCodec
{
  protected void <init>(com.datastax.oss.driver.api.core.type.ListType, com.datastax.oss.driver.api.core.type.reflect.GenericType<PrimitiveArrayT>);
    descriptor: (Lcom/datastax/oss/driver/api/core/type/ListType;Lcom/datastax/oss/driver/api/core/type/reflect/GenericType;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=5, locals=4, args_size=3
        start local 0 // com.datastax.oss.driver.internal.core.type.codec.extras.array.AbstractPrimitiveListToArrayCodec this
        start local 1 // com.datastax.oss.driver.api.core.type.ListType cqlType
        start local 2 // com.datastax.oss.driver.api.core.type.reflect.GenericType javaClass
         0: .line 43
            aload 0 /* this */
            aload 1 /* cqlType */
            aload 2 /* javaClass */
            invokespecial com.datastax.oss.driver.internal.core.type.codec.extras.array.AbstractListToArrayCodec.<init>:(Lcom/datastax/oss/driver/api/core/type/ListType;Lcom/datastax/oss/driver/api/core/type/reflect/GenericType;)V
         1: .line 44
            aload 2 /* javaClass */
            invokevirtual com.datastax.oss.driver.api.core.type.reflect.GenericType.getComponentType:()Lcom/datastax/oss/driver/api/core/type/reflect/GenericType;
            invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast com.datastax.oss.driver.api.core.type.reflect.GenericType
            astore 3 /* componentType */
        start local 3 // com.datastax.oss.driver.api.core.type.reflect.GenericType componentType
         2: .line 45
            aload 3 /* componentType */
            invokevirtual com.datastax.oss.driver.api.core.type.reflect.GenericType.isPrimitive:()Z
            ifne 6
         3: .line 46
            new java.lang.IllegalArgumentException
            dup
         4: .line 47
            new java.lang.StringBuilder
            dup
            ldc "Expecting primitive array component type, got "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 3 /* componentType */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         5: .line 46
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         6: .line 49
      StackMap locals: com.datastax.oss.driver.internal.core.type.codec.extras.array.AbstractPrimitiveListToArrayCodec com.datastax.oss.driver.api.core.type.ListType com.datastax.oss.driver.api.core.type.reflect.GenericType com.datastax.oss.driver.api.core.type.reflect.GenericType
      StackMap stack:
            return
        end local 3 // com.datastax.oss.driver.api.core.type.reflect.GenericType componentType
        end local 2 // com.datastax.oss.driver.api.core.type.reflect.GenericType javaClass
        end local 1 // com.datastax.oss.driver.api.core.type.ListType cqlType
        end local 0 // com.datastax.oss.driver.internal.core.type.codec.extras.array.AbstractPrimitiveListToArrayCodec this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    7     0           this  Lcom/datastax/oss/driver/internal/core/type/codec/extras/array/AbstractPrimitiveListToArrayCodec<TPrimitiveArrayT;>;
            0    7     1        cqlType  Lcom/datastax/oss/driver/api/core/type/ListType;
            0    7     2      javaClass  Lcom/datastax/oss/driver/api/core/type/reflect/GenericType<TPrimitiveArrayT;>;
            2    7     3  componentType  Lcom/datastax/oss/driver/api/core/type/reflect/GenericType<*>;
    Signature: (Lcom/datastax/oss/driver/api/core/type/ListType;Lcom/datastax/oss/driver/api/core/type/reflect/GenericType<TPrimitiveArrayT;>;)V
    RuntimeInvisibleParameterAnnotations: 
      0:
        edu.umd.cs.findbugs.annotations.NonNull()
      1:
        edu.umd.cs.findbugs.annotations.NonNull()
    MethodParameters:
           Name  Flags
      cqlType    
      javaClass  

  public java.nio.ByteBuffer encode(PrimitiveArrayT, com.datastax.oss.driver.api.core.ProtocolVersion);
    descriptor: (Ljava/lang/Object;Lcom/datastax/oss/driver/api/core/ProtocolVersion;)Ljava/nio/ByteBuffer;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=8, args_size=3
        start local 0 // com.datastax.oss.driver.internal.core.type.codec.extras.array.AbstractPrimitiveListToArrayCodec this
        start local 1 // java.lang.Object array
        start local 2 // com.datastax.oss.driver.api.core.ProtocolVersion protocolVersion
         0: .line 55
            aload 1 /* array */
            ifnonnull 2
         1: .line 56
            aconst_null
            areturn
         2: .line 58
      StackMap locals:
      StackMap stack:
            aload 1 /* array */
            invokestatic java.lang.reflect.Array.getLength:(Ljava/lang/Object;)I
            istore 3 /* length */
        start local 3 // int length
         3: .line 59
            iconst_4
            aload 0 /* this */
            invokevirtual com.datastax.oss.driver.internal.core.type.codec.extras.array.AbstractPrimitiveListToArrayCodec.sizeOfComponentType:()I
            iadd
            istore 4 /* sizeOfElement */
        start local 4 // int sizeOfElement
         4: .line 60
            iconst_4
            iload 3 /* length */
            iload 4 /* sizeOfElement */
            imul
            iadd
            istore 5 /* totalSize */
        start local 5 // int totalSize
         5: .line 61
            iload 5 /* totalSize */
            invokestatic java.nio.ByteBuffer.allocate:(I)Ljava/nio/ByteBuffer;
            astore 6 /* output */
        start local 6 // java.nio.ByteBuffer output
         6: .line 62
            aload 6 /* output */
            iload 3 /* length */
            invokevirtual java.nio.ByteBuffer.putInt:(I)Ljava/nio/ByteBuffer;
            pop
         7: .line 63
            iconst_0
            istore 7 /* i */
        start local 7 // int i
         8: goto 12
         9: .line 64
      StackMap locals: com.datastax.oss.driver.internal.core.type.codec.extras.array.AbstractPrimitiveListToArrayCodec java.lang.Object com.datastax.oss.driver.api.core.ProtocolVersion int int int java.nio.ByteBuffer int
      StackMap stack:
            aload 6 /* output */
            aload 0 /* this */
            invokevirtual com.datastax.oss.driver.internal.core.type.codec.extras.array.AbstractPrimitiveListToArrayCodec.sizeOfComponentType:()I
            invokevirtual java.nio.ByteBuffer.putInt:(I)Ljava/nio/ByteBuffer;
            pop
        10: .line 65
            aload 0 /* this */
            aload 6 /* output */
            aload 1 /* array */
            iload 7 /* i */
            aload 2 /* protocolVersion */
            invokevirtual com.datastax.oss.driver.internal.core.type.codec.extras.array.AbstractPrimitiveListToArrayCodec.serializeElement:(Ljava/nio/ByteBuffer;Ljava/lang/Object;ILcom/datastax/oss/driver/api/core/ProtocolVersion;)V
        11: .line 63
            iinc 7 /* i */ 1
      StackMap locals:
      StackMap stack:
        12: iload 7 /* i */
            iload 3 /* length */
            if_icmplt 9
        end local 7 // int i
        13: .line 67
            aload 6 /* output */
            invokevirtual java.nio.ByteBuffer.flip:()Ljava/nio/Buffer;
            pop
        14: .line 68
            aload 6 /* output */
            areturn
        end local 6 // java.nio.ByteBuffer output
        end local 5 // int totalSize
        end local 4 // int sizeOfElement
        end local 3 // int length
        end local 2 // com.datastax.oss.driver.api.core.ProtocolVersion protocolVersion
        end local 1 // java.lang.Object array
        end local 0 // com.datastax.oss.driver.internal.core.type.codec.extras.array.AbstractPrimitiveListToArrayCodec this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   15     0             this  Lcom/datastax/oss/driver/internal/core/type/codec/extras/array/AbstractPrimitiveListToArrayCodec<TPrimitiveArrayT;>;
            0   15     1            array  TPrimitiveArrayT;
            0   15     2  protocolVersion  Lcom/datastax/oss/driver/api/core/ProtocolVersion;
            3   15     3           length  I
            4   15     4    sizeOfElement  I
            5   15     5        totalSize  I
            6   15     6           output  Ljava/nio/ByteBuffer;
            8   13     7                i  I
    Signature: (TPrimitiveArrayT;Lcom/datastax/oss/driver/api/core/ProtocolVersion;)Ljava/nio/ByteBuffer;
    RuntimeInvisibleAnnotations: 
      edu.umd.cs.findbugs.annotations.Nullable()
    RuntimeInvisibleParameterAnnotations: 
      0:
        edu.umd.cs.findbugs.annotations.Nullable()
      1:
        edu.umd.cs.findbugs.annotations.NonNull()
    MethodParameters:
                 Name  Flags
      array            
      protocolVersion  

  public PrimitiveArrayT decode(java.nio.ByteBuffer, com.datastax.oss.driver.api.core.ProtocolVersion);
    descriptor: (Ljava/nio/ByteBuffer;Lcom/datastax/oss/driver/api/core/ProtocolVersion;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=8, args_size=3
        start local 0 // com.datastax.oss.driver.internal.core.type.codec.extras.array.AbstractPrimitiveListToArrayCodec this
        start local 1 // java.nio.ByteBuffer bytes
        start local 2 // com.datastax.oss.driver.api.core.ProtocolVersion protocolVersion
         0: .line 75
            aload 1 /* bytes */
            ifnull 1
            aload 1 /* bytes */
            invokevirtual java.nio.ByteBuffer.remaining:()I
            ifne 2
         1: .line 76
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_0
            invokevirtual com.datastax.oss.driver.internal.core.type.codec.extras.array.AbstractPrimitiveListToArrayCodec.newInstance:(I)Ljava/lang/Object;
            areturn
         2: .line 78
      StackMap locals:
      StackMap stack:
            aload 1 /* bytes */
            invokevirtual java.nio.ByteBuffer.duplicate:()Ljava/nio/ByteBuffer;
            astore 3 /* input */
        start local 3 // java.nio.ByteBuffer input
         3: .line 79
            aload 3 /* input */
            invokevirtual java.nio.ByteBuffer.getInt:()I
            istore 4 /* length */
        start local 4 // int length
         4: .line 80
            aload 0 /* this */
            iload 4 /* length */
            invokevirtual com.datastax.oss.driver.internal.core.type.codec.extras.array.AbstractPrimitiveListToArrayCodec.newInstance:(I)Ljava/lang/Object;
            astore 5 /* array */
        start local 5 // java.lang.Object array
         5: .line 81
            iconst_0
            istore 6 /* i */
        start local 6 // int i
         6: goto 12
         7: .line 82
      StackMap locals: com.datastax.oss.driver.internal.core.type.codec.extras.array.AbstractPrimitiveListToArrayCodec java.nio.ByteBuffer com.datastax.oss.driver.api.core.ProtocolVersion java.nio.ByteBuffer int java.lang.Object int
      StackMap stack:
            aload 3 /* input */
            invokevirtual java.nio.ByteBuffer.getInt:()I
            istore 7 /* elementSize */
        start local 7 // int elementSize
         8: .line 84
            iload 7 /* elementSize */
            ifge 10
         9: .line 85
            new java.lang.NullPointerException
            dup
            ldc "Primitive arrays cannot store null elements"
            invokespecial java.lang.NullPointerException.<init>:(Ljava/lang/String;)V
            athrow
        10: .line 87
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            aload 3 /* input */
            aload 5 /* array */
            iload 6 /* i */
            aload 2 /* protocolVersion */
            invokevirtual com.datastax.oss.driver.internal.core.type.codec.extras.array.AbstractPrimitiveListToArrayCodec.deserializeElement:(Ljava/nio/ByteBuffer;Ljava/lang/Object;ILcom/datastax/oss/driver/api/core/ProtocolVersion;)V
        end local 7 // int elementSize
        11: .line 81
            iinc 6 /* i */ 1
      StackMap locals:
      StackMap stack:
        12: iload 6 /* i */
            iload 4 /* length */
            if_icmplt 7
        end local 6 // int i
        13: .line 90
            aload 5 /* array */
            areturn
        end local 5 // java.lang.Object array
        end local 4 // int length
        end local 3 // java.nio.ByteBuffer input
        end local 2 // com.datastax.oss.driver.api.core.ProtocolVersion protocolVersion
        end local 1 // java.nio.ByteBuffer bytes
        end local 0 // com.datastax.oss.driver.internal.core.type.codec.extras.array.AbstractPrimitiveListToArrayCodec this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   14     0             this  Lcom/datastax/oss/driver/internal/core/type/codec/extras/array/AbstractPrimitiveListToArrayCodec<TPrimitiveArrayT;>;
            0   14     1            bytes  Ljava/nio/ByteBuffer;
            0   14     2  protocolVersion  Lcom/datastax/oss/driver/api/core/ProtocolVersion;
            3   14     3            input  Ljava/nio/ByteBuffer;
            4   14     4           length  I
            5   14     5            array  TPrimitiveArrayT;
            6   13     6                i  I
            8   11     7      elementSize  I
    Signature: (Ljava/nio/ByteBuffer;Lcom/datastax/oss/driver/api/core/ProtocolVersion;)TPrimitiveArrayT;
    RuntimeInvisibleAnnotations: 
      edu.umd.cs.findbugs.annotations.Nullable()
    RuntimeInvisibleParameterAnnotations: 
      0:
        edu.umd.cs.findbugs.annotations.Nullable()
      1:
        edu.umd.cs.findbugs.annotations.NonNull()
    MethodParameters:
                 Name  Flags
      bytes            
      protocolVersion  

  protected abstract int sizeOfComponentType();
    descriptor: ()I
    flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT

  protected abstract void serializeElement(java.nio.ByteBuffer, PrimitiveArrayT, int, com.datastax.oss.driver.api.core.ProtocolVersion);
    descriptor: (Ljava/nio/ByteBuffer;Ljava/lang/Object;ILcom/datastax/oss/driver/api/core/ProtocolVersion;)V
    flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT
    Signature: (Ljava/nio/ByteBuffer;TPrimitiveArrayT;ILcom/datastax/oss/driver/api/core/ProtocolVersion;)V
    RuntimeInvisibleParameterAnnotations: 
      0:
        edu.umd.cs.findbugs.annotations.NonNull()
      1:
        edu.umd.cs.findbugs.annotations.NonNull()
      2:
      3:
        edu.umd.cs.findbugs.annotations.NonNull()
    MethodParameters:
                 Name  Flags
      output           
      array            
      index            
      protocolVersion  

  protected abstract void deserializeElement(java.nio.ByteBuffer, PrimitiveArrayT, int, com.datastax.oss.driver.api.core.ProtocolVersion);
    descriptor: (Ljava/nio/ByteBuffer;Ljava/lang/Object;ILcom/datastax/oss/driver/api/core/ProtocolVersion;)V
    flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT
    Signature: (Ljava/nio/ByteBuffer;TPrimitiveArrayT;ILcom/datastax/oss/driver/api/core/ProtocolVersion;)V
    RuntimeInvisibleParameterAnnotations: 
      0:
        edu.umd.cs.findbugs.annotations.NonNull()
      1:
        edu.umd.cs.findbugs.annotations.NonNull()
      2:
      3:
        edu.umd.cs.findbugs.annotations.NonNull()
    MethodParameters:
                 Name  Flags
      input            
      array            
      index            
      protocolVersion  
}
Signature: <PrimitiveArrayT:Ljava/lang/Object;>Lcom/datastax/oss/driver/internal/core/type/codec/extras/array/AbstractListToArrayCodec<TPrimitiveArrayT;>;
SourceFile: "AbstractPrimitiveListToArrayCodec.java"