public class com.datastax.oss.driver.internal.core.type.codec.TupleCodec implements com.datastax.oss.driver.api.core.type.codec.TypeCodec<com.datastax.oss.driver.api.core.data.TupleValue>
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: com.datastax.oss.driver.internal.core.type.codec.TupleCodec
super_class: java.lang.Object
{
private final com.datastax.oss.driver.api.core.type.TupleType cqlType;
descriptor: Lcom/datastax/oss/driver/api/core/type/TupleType;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
public void <init>(com.datastax.oss.driver.api.core.type.TupleType);
descriptor: (Lcom/datastax/oss/driver/api/core/type/TupleType;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
aload 1
putfield com.datastax.oss.driver.internal.core.type.codec.TupleCodec.cqlType:Lcom/datastax/oss/driver/api/core/type/TupleType;
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/datastax/oss/driver/internal/core/type/codec/TupleCodec;
0 3 1 cqlType Lcom/datastax/oss/driver/api/core/type/TupleType;
RuntimeInvisibleParameterAnnotations:
0:
edu.umd.cs.findbugs.annotations.NonNull()
MethodParameters:
Name Flags
cqlType
public com.datastax.oss.driver.api.core.type.reflect.GenericType<com.datastax.oss.driver.api.core.data.TupleValue> getJavaType();
descriptor: ()Lcom/datastax/oss/driver/api/core/type/reflect/GenericType;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: getstatic com.datastax.oss.driver.api.core.type.reflect.GenericType.TUPLE_VALUE:Lcom/datastax/oss/driver/api/core/type/reflect/GenericType;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/datastax/oss/driver/internal/core/type/codec/TupleCodec;
Signature: ()Lcom/datastax/oss/driver/api/core/type/reflect/GenericType<Lcom/datastax/oss/driver/api/core/data/TupleValue;>;
RuntimeInvisibleAnnotations:
edu.umd.cs.findbugs.annotations.NonNull()
public com.datastax.oss.driver.api.core.type.DataType getCqlType();
descriptor: ()Lcom/datastax/oss/driver/api/core/type/DataType;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.datastax.oss.driver.internal.core.type.codec.TupleCodec.cqlType:Lcom/datastax/oss/driver/api/core/type/TupleType;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/datastax/oss/driver/internal/core/type/codec/TupleCodec;
RuntimeInvisibleAnnotations:
edu.umd.cs.findbugs.annotations.NonNull()
public boolean accepts(java.lang.Object);
descriptor: (Ljava/lang/Object;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 1
instanceof com.datastax.oss.driver.api.core.data.TupleValue
ifeq 1
aload 1
checkcast com.datastax.oss.driver.api.core.data.TupleValue
invokeinterface com.datastax.oss.driver.api.core.data.TupleValue.getType:()Lcom/datastax/oss/driver/api/core/type/TupleType;
aload 0
getfield com.datastax.oss.driver.internal.core.type.codec.TupleCodec.cqlType:Lcom/datastax/oss/driver/api/core/type/TupleType;
invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
ifeq 1
iconst_1
ireturn
StackMap locals:
StackMap stack:
1: iconst_0
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/datastax/oss/driver/internal/core/type/codec/TupleCodec;
0 2 1 value Ljava/lang/Object;
RuntimeInvisibleParameterAnnotations:
0:
edu.umd.cs.findbugs.annotations.NonNull()
MethodParameters:
Name Flags
value
public boolean accepts(java.lang.Class<?>);
descriptor: (Ljava/lang/Class;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: ldc Lcom/datastax/oss/driver/api/core/data/TupleValue;
aload 1
invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/datastax/oss/driver/internal/core/type/codec/TupleCodec;
0 1 1 javaClass Ljava/lang/Class<*>;
Signature: (Ljava/lang/Class<*>;)Z
RuntimeInvisibleParameterAnnotations:
0:
edu.umd.cs.findbugs.annotations.NonNull()
MethodParameters:
Name Flags
javaClass
public java.nio.ByteBuffer encode(com.datastax.oss.driver.api.core.data.TupleValue, com.datastax.oss.driver.api.core.ProtocolVersion);
descriptor: (Lcom/datastax/oss/driver/api/core/data/TupleValue;Lcom/datastax/oss/driver/api/core/ProtocolVersion;)Ljava/nio/ByteBuffer;
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=7, args_size=3
start local 0 start local 1 start local 2 0: aload 1
ifnonnull 2
1: aconst_null
areturn
2: StackMap locals:
StackMap stack:
aload 1
invokeinterface com.datastax.oss.driver.api.core.data.TupleValue.getType:()Lcom/datastax/oss/driver/api/core/type/TupleType;
aload 0
getfield com.datastax.oss.driver.internal.core.type.codec.TupleCodec.cqlType:Lcom/datastax/oss/driver/api/core/type/TupleType;
invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
ifne 6
3: new java.lang.IllegalArgumentException
dup
4: ldc "Invalid tuple type, expected %s but got %s"
iconst_2
anewarray java.lang.Object
dup
iconst_0
aload 0
getfield com.datastax.oss.driver.internal.core.type.codec.TupleCodec.cqlType:Lcom/datastax/oss/driver/api/core/type/TupleType;
aastore
dup
iconst_1
aload 1
invokeinterface com.datastax.oss.driver.api.core.data.TupleValue.getType:()Lcom/datastax/oss/driver/api/core/type/TupleType;
aastore
invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
5: invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
6: StackMap locals:
StackMap stack:
iconst_0
istore 3
start local 3 7: iconst_0
istore 4
start local 4 8: goto 14
9: StackMap locals: int int
StackMap stack:
aload 1
iload 4
invokeinterface com.datastax.oss.driver.api.core.data.TupleValue.getBytesUnsafe:(I)Ljava/nio/ByteBuffer;
astore 5
start local 5 10: iload 3
iconst_4
aload 5
ifnonnull 11
iconst_0
goto 12
StackMap locals: com.datastax.oss.driver.internal.core.type.codec.TupleCodec com.datastax.oss.driver.api.core.data.TupleValue com.datastax.oss.driver.api.core.ProtocolVersion int int java.nio.ByteBuffer
StackMap stack: int int
11: aload 5
invokevirtual java.nio.ByteBuffer.remaining:()I
StackMap locals: com.datastax.oss.driver.internal.core.type.codec.TupleCodec com.datastax.oss.driver.api.core.data.TupleValue com.datastax.oss.driver.api.core.ProtocolVersion int int java.nio.ByteBuffer
StackMap stack: int int int
12: iadd
iadd
istore 3
end local 5 13: iinc 4 1
StackMap locals:
StackMap stack:
14: iload 4
aload 1
invokeinterface com.datastax.oss.driver.api.core.data.TupleValue.size:()I
if_icmplt 9
end local 4 15: iload 3
invokestatic java.nio.ByteBuffer.allocate:(I)Ljava/nio/ByteBuffer;
astore 4
start local 4 16: iconst_0
istore 5
start local 5 17: goto 25
18: StackMap locals: com.datastax.oss.driver.internal.core.type.codec.TupleCodec com.datastax.oss.driver.api.core.data.TupleValue com.datastax.oss.driver.api.core.ProtocolVersion int java.nio.ByteBuffer int
StackMap stack:
aload 1
iload 5
invokeinterface com.datastax.oss.driver.api.core.data.TupleValue.getBytesUnsafe:(I)Ljava/nio/ByteBuffer;
astore 6
start local 6 19: aload 6
ifnonnull 22
20: aload 4
iconst_m1
invokevirtual java.nio.ByteBuffer.putInt:(I)Ljava/nio/ByteBuffer;
pop
21: goto 24
22: StackMap locals: java.nio.ByteBuffer
StackMap stack:
aload 4
aload 6
invokevirtual java.nio.ByteBuffer.remaining:()I
invokevirtual java.nio.ByteBuffer.putInt:(I)Ljava/nio/ByteBuffer;
pop
23: aload 4
aload 6
invokevirtual java.nio.ByteBuffer.duplicate:()Ljava/nio/ByteBuffer;
invokevirtual java.nio.ByteBuffer.put:(Ljava/nio/ByteBuffer;)Ljava/nio/ByteBuffer;
pop
end local 6 24: StackMap locals:
StackMap stack:
iinc 5 1
StackMap locals:
StackMap stack:
25: iload 5
aload 1
invokeinterface com.datastax.oss.driver.api.core.data.TupleValue.size:()I
if_icmplt 18
end local 5 26: aload 4
invokevirtual java.nio.ByteBuffer.flip:()Ljava/nio/Buffer;
checkcast java.nio.ByteBuffer
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 27 0 this Lcom/datastax/oss/driver/internal/core/type/codec/TupleCodec;
0 27 1 value Lcom/datastax/oss/driver/api/core/data/TupleValue;
0 27 2 protocolVersion Lcom/datastax/oss/driver/api/core/ProtocolVersion;
7 27 3 toAllocate I
8 15 4 i I
10 13 5 field Ljava/nio/ByteBuffer;
16 27 4 result Ljava/nio/ByteBuffer;
17 26 5 i I
19 24 6 field 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
value
protocolVersion
public com.datastax.oss.driver.api.core.data.TupleValue decode(java.nio.ByteBuffer, com.datastax.oss.driver.api.core.ProtocolVersion);
descriptor: (Ljava/nio/ByteBuffer;Lcom/datastax/oss/driver/api/core/ProtocolVersion;)Lcom/datastax/oss/driver/api/core/data/TupleValue;
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=8, args_size=3
start local 0 start local 1 start local 2 0: aload 1
ifnonnull 2
1: aconst_null
areturn
2: StackMap locals:
StackMap stack:
aload 1
invokevirtual java.nio.ByteBuffer.duplicate:()Ljava/nio/ByteBuffer;
astore 3
start local 3 3: aload 0
getfield com.datastax.oss.driver.internal.core.type.codec.TupleCodec.cqlType:Lcom/datastax/oss/driver/api/core/type/TupleType;
invokeinterface com.datastax.oss.driver.api.core.type.TupleType.newValue:()Lcom/datastax/oss/driver/api/core/data/TupleValue;
astore 4
start local 4 4: iconst_0
istore 5
start local 5 5: goto 21
6: StackMap locals: java.nio.ByteBuffer com.datastax.oss.driver.api.core.data.TupleValue int
StackMap stack:
iload 5
aload 0
getfield com.datastax.oss.driver.internal.core.type.codec.TupleCodec.cqlType:Lcom/datastax/oss/driver/api/core/type/TupleType;
invokeinterface com.datastax.oss.driver.api.core.type.TupleType.getComponentTypes:()Ljava/util/List;
invokeinterface java.util.List.size:()I
if_icmple 12
7: new java.lang.IllegalArgumentException
dup
8: ldc "Too many fields in encoded tuple, expected %d"
iconst_1
anewarray java.lang.Object
dup
iconst_0
9: aload 0
getfield com.datastax.oss.driver.internal.core.type.codec.TupleCodec.cqlType:Lcom/datastax/oss/driver/api/core/type/TupleType;
invokeinterface com.datastax.oss.driver.api.core.type.TupleType.getComponentTypes:()Ljava/util/List;
invokeinterface java.util.List.size:()I
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
10: invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
11: invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
12: StackMap locals:
StackMap stack:
aload 3
invokevirtual java.nio.ByteBuffer.getInt:()I
istore 6
start local 6 13: iload 6
ifge 16
14: aconst_null
astore 7
start local 7 15: goto 19
end local 7 16: StackMap locals: int
StackMap stack:
aload 3
invokevirtual java.nio.ByteBuffer.slice:()Ljava/nio/ByteBuffer;
astore 7
start local 7 17: aload 7
iload 6
invokevirtual java.nio.ByteBuffer.limit:(I)Ljava/nio/Buffer;
pop
18: aload 3
aload 3
invokevirtual java.nio.ByteBuffer.position:()I
iload 6
iadd
invokevirtual java.nio.ByteBuffer.position:(I)Ljava/nio/Buffer;
pop
19: StackMap locals: java.nio.ByteBuffer
StackMap stack:
aload 4
iload 5
aload 7
invokeinterface com.datastax.oss.driver.api.core.data.TupleValue.setBytesUnsafe:(ILjava/nio/ByteBuffer;)Lcom/datastax/oss/driver/api/core/data/SettableByIndex;
checkcast com.datastax.oss.driver.api.core.data.TupleValue
astore 4
20: iinc 5 1
end local 7 end local 6 21: StackMap locals:
StackMap stack:
aload 3
invokevirtual java.nio.ByteBuffer.hasRemaining:()Z
ifne 6
22: aload 4
23: areturn
end local 5 end local 4 end local 3 24: StackMap locals: com.datastax.oss.driver.internal.core.type.codec.TupleCodec java.nio.ByteBuffer com.datastax.oss.driver.api.core.ProtocolVersion
StackMap stack: java.nio.BufferUnderflowException
astore 3
start local 3 25: new java.lang.IllegalArgumentException
dup
ldc "Not enough bytes to deserialize a tuple"
aload 3
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 26 0 this Lcom/datastax/oss/driver/internal/core/type/codec/TupleCodec;
0 26 1 bytes Ljava/nio/ByteBuffer;
0 26 2 protocolVersion Lcom/datastax/oss/driver/api/core/ProtocolVersion;
3 24 3 input Ljava/nio/ByteBuffer;
4 24 4 value Lcom/datastax/oss/driver/api/core/data/TupleValue;
5 24 5 i I
13 21 6 elementSize I
15 16 7 element Ljava/nio/ByteBuffer;
17 21 7 element Ljava/nio/ByteBuffer;
25 26 3 e Ljava/nio/BufferUnderflowException;
Exception table:
from to target type
2 23 24 Class java.nio.BufferUnderflowException
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
public java.lang.String format(com.datastax.oss.driver.api.core.data.TupleValue);
descriptor: (Lcom/datastax/oss/driver/api/core/data/TupleValue;)Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=8, args_size=2
start local 0 start local 1 0: aload 1
ifnonnull 2
1: ldc "NULL"
areturn
2: StackMap locals:
StackMap stack:
aload 1
invokeinterface com.datastax.oss.driver.api.core.data.TupleValue.getType:()Lcom/datastax/oss/driver/api/core/type/TupleType;
aload 0
getfield com.datastax.oss.driver.internal.core.type.codec.TupleCodec.cqlType:Lcom/datastax/oss/driver/api/core/type/TupleType;
invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
ifne 6
3: new java.lang.IllegalArgumentException
dup
4: ldc "Invalid tuple type, expected %s but got %s"
iconst_2
anewarray java.lang.Object
dup
iconst_0
aload 0
getfield com.datastax.oss.driver.internal.core.type.codec.TupleCodec.cqlType:Lcom/datastax/oss/driver/api/core/type/TupleType;
aastore
dup
iconst_1
aload 1
invokeinterface com.datastax.oss.driver.api.core.data.TupleValue.getType:()Lcom/datastax/oss/driver/api/core/type/TupleType;
aastore
invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
5: invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
6: StackMap locals:
StackMap stack:
aload 0
getfield com.datastax.oss.driver.internal.core.type.codec.TupleCodec.cqlType:Lcom/datastax/oss/driver/api/core/type/TupleType;
invokeinterface com.datastax.oss.driver.api.core.type.TupleType.getAttachmentPoint:()Lcom/datastax/oss/driver/api/core/detach/AttachmentPoint;
invokeinterface com.datastax.oss.driver.api.core.detach.AttachmentPoint.getCodecRegistry:()Lcom/datastax/oss/driver/api/core/type/codec/registry/CodecRegistry;
astore 2
start local 2 7: new java.lang.StringBuilder
dup
ldc "("
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
astore 3
start local 3 8: iconst_1
istore 4
start local 4 9: iconst_0
istore 5
start local 5 10: goto 19
11: StackMap locals: com.datastax.oss.driver.internal.core.type.codec.TupleCodec com.datastax.oss.driver.api.core.data.TupleValue com.datastax.oss.driver.api.core.type.codec.registry.CodecRegistry java.lang.StringBuilder int int
StackMap stack:
iload 4
ifeq 14
12: iconst_0
istore 4
13: goto 15
14: StackMap locals:
StackMap stack:
aload 3
ldc ","
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
15: StackMap locals:
StackMap stack:
aload 0
getfield com.datastax.oss.driver.internal.core.type.codec.TupleCodec.cqlType:Lcom/datastax/oss/driver/api/core/type/TupleType;
invokeinterface com.datastax.oss.driver.api.core.type.TupleType.getComponentTypes:()Ljava/util/List;
iload 5
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast com.datastax.oss.driver.api.core.type.DataType
astore 6
start local 6 16: aload 2
aload 6
invokeinterface com.datastax.oss.driver.api.core.type.codec.registry.CodecRegistry.codecFor:(Lcom/datastax/oss/driver/api/core/type/DataType;)Lcom/datastax/oss/driver/api/core/type/codec/TypeCodec;
astore 7
start local 7 17: aload 3
aload 7
aload 1
iload 5
aload 7
invokeinterface com.datastax.oss.driver.api.core.data.TupleValue.get:(ILcom/datastax/oss/driver/api/core/type/codec/TypeCodec;)Ljava/lang/Object;
invokeinterface com.datastax.oss.driver.api.core.type.codec.TypeCodec.format:(Ljava/lang/Object;)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
end local 7 end local 6 18: iinc 5 1
StackMap locals:
StackMap stack:
19: iload 5
aload 1
invokeinterface com.datastax.oss.driver.api.core.data.TupleValue.size:()I
if_icmplt 11
end local 5 20: aload 3
ldc ")"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
21: aload 3
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 22 0 this Lcom/datastax/oss/driver/internal/core/type/codec/TupleCodec;
0 22 1 value Lcom/datastax/oss/driver/api/core/data/TupleValue;
7 22 2 registry Lcom/datastax/oss/driver/api/core/type/codec/registry/CodecRegistry;
8 22 3 sb Ljava/lang/StringBuilder;
9 22 4 first Z
10 20 5 i I
16 18 6 elementType Lcom/datastax/oss/driver/api/core/type/DataType;
17 18 7 codec Lcom/datastax/oss/driver/api/core/type/codec/TypeCodec<Ljava/lang/Object;>;
RuntimeInvisibleAnnotations:
edu.umd.cs.findbugs.annotations.NonNull()
RuntimeInvisibleParameterAnnotations:
0:
edu.umd.cs.findbugs.annotations.Nullable()
MethodParameters:
Name Flags
value
public com.datastax.oss.driver.api.core.data.TupleValue parse(java.lang.String);
descriptor: (Ljava/lang/String;)Lcom/datastax/oss/driver/api/core/data/TupleValue;
flags: (0x0001) ACC_PUBLIC
Code:
stack=8, locals=13, args_size=2
start local 0 start local 1 0: aload 1
ifnull 1
aload 1
invokevirtual java.lang.String.isEmpty:()Z
ifne 1
aload 1
ldc "NULL"
invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
ifeq 2
1: StackMap locals:
StackMap stack:
aconst_null
areturn
2: StackMap locals:
StackMap stack:
aload 0
getfield com.datastax.oss.driver.internal.core.type.codec.TupleCodec.cqlType:Lcom/datastax/oss/driver/api/core/type/TupleType;
invokeinterface com.datastax.oss.driver.api.core.type.TupleType.newValue:()Lcom/datastax/oss/driver/api/core/data/TupleValue;
astore 2
start local 2 3: aload 1
invokevirtual java.lang.String.length:()I
istore 3
start local 3 4: aload 1
iconst_0
invokestatic com.datastax.oss.driver.internal.core.type.codec.ParseUtils.skipSpaces:(Ljava/lang/String;I)I
istore 4
start local 4 5: aload 1
iload 4
invokevirtual java.lang.String.charAt:(I)C
bipush 40
if_icmpeq 11
6: new java.lang.IllegalArgumentException
dup
7: ldc "Cannot parse tuple value from \"%s\", at character %d expecting '(' but got '%c'"
iconst_3
anewarray java.lang.Object
dup
iconst_0
8: aload 1
aastore
dup
iconst_1
iload 4
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
dup
iconst_2
aload 1
iload 4
invokevirtual java.lang.String.charAt:(I)C
invokestatic java.lang.Character.valueOf:(C)Ljava/lang/Character;
aastore
9: invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
10: invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
11: StackMap locals: com.datastax.oss.driver.api.core.data.TupleValue int int
StackMap stack:
iinc 4 1
12: aload 1
iload 4
invokestatic com.datastax.oss.driver.internal.core.type.codec.ParseUtils.skipSpaces:(Ljava/lang/String;I)I
istore 4
13: aload 0
getfield com.datastax.oss.driver.internal.core.type.codec.TupleCodec.cqlType:Lcom/datastax/oss/driver/api/core/type/TupleType;
invokeinterface com.datastax.oss.driver.api.core.type.TupleType.getAttachmentPoint:()Lcom/datastax/oss/driver/api/core/detach/AttachmentPoint;
invokeinterface com.datastax.oss.driver.api.core.detach.AttachmentPoint.getCodecRegistry:()Lcom/datastax/oss/driver/api/core/type/codec/registry/CodecRegistry;
astore 5
start local 5 14: iconst_0
istore 6
start local 6 15: goto 66
16: StackMap locals: com.datastax.oss.driver.api.core.type.codec.registry.CodecRegistry int
StackMap stack:
aload 1
iload 4
invokevirtual java.lang.String.charAt:(I)C
bipush 41
if_icmpne 25
17: aload 1
iload 4
iconst_1
iadd
invokestatic com.datastax.oss.driver.internal.core.type.codec.ParseUtils.skipSpaces:(Ljava/lang/String;I)I
istore 4
18: iload 4
iload 3
if_icmpne 20
19: aload 2
areturn
20: StackMap locals:
StackMap stack:
new java.lang.IllegalArgumentException
dup
21: ldc "Cannot parse tuple value from \"%s\", at character %d expecting EOF or blank, but got \"%s\""
iconst_3
anewarray java.lang.Object
dup
iconst_0
22: aload 1
aastore
dup
iconst_1
iload 4
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
dup
iconst_2
aload 1
iload 4
invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
aastore
23: invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
24: invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
25: StackMap locals:
StackMap stack:
aload 1
iload 4
invokestatic com.datastax.oss.driver.internal.core.type.codec.ParseUtils.skipCQLValue:(Ljava/lang/String;I)I
istore 7
start local 7 26: goto 34
end local 7 StackMap locals:
StackMap stack: java.lang.IllegalArgumentException
27: astore 8
start local 8 28: new java.lang.IllegalArgumentException
dup
29: ldc "Cannot parse tuple value from \"%s\", invalid CQL value at field %d (character %d)"
iconst_3
anewarray java.lang.Object
dup
iconst_0
30: aload 1
aastore
dup
iconst_1
iload 6
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
dup
iconst_2
iload 4
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
31: invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
32: aload 8
33: invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
end local 8 start local 7 34: StackMap locals: int
StackMap stack:
aload 1
iload 4
iload 7
invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
astore 8
start local 8 35: aload 0
getfield com.datastax.oss.driver.internal.core.type.codec.TupleCodec.cqlType:Lcom/datastax/oss/driver/api/core/type/TupleType;
invokeinterface com.datastax.oss.driver.api.core.type.TupleType.getComponentTypes:()Ljava/util/List;
iload 6
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast com.datastax.oss.driver.api.core.type.DataType
astore 9
start local 9 36: aload 5
aload 9
invokeinterface com.datastax.oss.driver.api.core.type.codec.registry.CodecRegistry.codecFor:(Lcom/datastax/oss/driver/api/core/type/DataType;)Lcom/datastax/oss/driver/api/core/type/codec/TypeCodec;
astore 10
start local 10 37: aload 10
aload 8
invokeinterface com.datastax.oss.driver.api.core.type.codec.TypeCodec.parse:(Ljava/lang/String;)Ljava/lang/Object;
astore 11
start local 11 38: goto 46
end local 11 StackMap locals: com.datastax.oss.driver.internal.core.type.codec.TupleCodec java.lang.String com.datastax.oss.driver.api.core.data.TupleValue int int com.datastax.oss.driver.api.core.type.codec.registry.CodecRegistry int int java.lang.String com.datastax.oss.driver.api.core.type.DataType com.datastax.oss.driver.api.core.type.codec.TypeCodec
StackMap stack: java.lang.Exception
39: astore 12
start local 12 40: new java.lang.IllegalArgumentException
dup
41: ldc "Cannot parse tuple value from \"%s\", invalid CQL value at field %d (character %d): %s"
iconst_4
anewarray java.lang.Object
dup
iconst_0
42: aload 1
aastore
dup
iconst_1
iload 6
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
dup
iconst_2
iload 4
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
dup
iconst_3
aload 12
invokevirtual java.lang.Exception.getMessage:()Ljava/lang/String;
aastore
43: invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
44: aload 12
45: invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
end local 12 start local 11 46: StackMap locals: java.lang.Object
StackMap stack:
aload 2
iload 6
aload 11
aload 10
invokeinterface com.datastax.oss.driver.api.core.data.TupleValue.set:(ILjava/lang/Object;Lcom/datastax/oss/driver/api/core/type/codec/TypeCodec;)Lcom/datastax/oss/driver/api/core/data/SettableByIndex;
checkcast com.datastax.oss.driver.api.core.data.TupleValue
astore 2
47: iload 7
istore 4
48: aload 1
iload 4
invokestatic com.datastax.oss.driver.internal.core.type.codec.ParseUtils.skipSpaces:(Ljava/lang/String;I)I
istore 4
49: iload 4
iload 3
if_icmpne 55
50: new java.lang.IllegalArgumentException
dup
51: ldc "Cannot parse tuple value from \"%s\", at field %d (character %d) expecting ',' or ')', but got EOF"
iconst_3
anewarray java.lang.Object
dup
iconst_0
52: aload 1
aastore
dup
iconst_1
iload 6
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
dup
iconst_2
iload 4
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
53: invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
54: invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
55: StackMap locals:
StackMap stack:
aload 1
iload 4
invokevirtual java.lang.String.charAt:(I)C
bipush 41
if_icmpne 57
56: goto 66
57: StackMap locals:
StackMap stack:
aload 1
iload 4
invokevirtual java.lang.String.charAt:(I)C
bipush 44
if_icmpeq 63
58: new java.lang.IllegalArgumentException
dup
59: ldc "Cannot parse tuple value from \"%s\", at field %d (character %d) expecting ',' but got '%c'"
iconst_4
anewarray java.lang.Object
dup
iconst_0
60: aload 1
aastore
dup
iconst_1
iload 6
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
dup
iconst_2
iload 4
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
dup
iconst_3
aload 1
iload 4
invokevirtual java.lang.String.charAt:(I)C
invokestatic java.lang.Character.valueOf:(C)Ljava/lang/Character;
aastore
61: invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
62: invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
63: StackMap locals:
StackMap stack:
iinc 4 1
64: aload 1
iload 4
invokestatic com.datastax.oss.driver.internal.core.type.codec.ParseUtils.skipSpaces:(Ljava/lang/String;I)I
istore 4
65: iinc 6 1
end local 11 end local 10 end local 9 end local 8 end local 7 66: StackMap locals: com.datastax.oss.driver.internal.core.type.codec.TupleCodec java.lang.String com.datastax.oss.driver.api.core.data.TupleValue int int com.datastax.oss.driver.api.core.type.codec.registry.CodecRegistry int
StackMap stack:
iload 4
iload 3
if_icmplt 16
67: new java.lang.IllegalArgumentException
dup
68: ldc "Cannot parse tuple value from \"%s\", at field %d (character %d) expecting CQL value or ')', got EOF"
iconst_3
anewarray java.lang.Object
dup
iconst_0
69: aload 1
aastore
dup
iconst_1
iload 6
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
dup
iconst_2
iload 4
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
70: invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
71: invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 72 0 this Lcom/datastax/oss/driver/internal/core/type/codec/TupleCodec;
0 72 1 value Ljava/lang/String;
3 72 2 tuple Lcom/datastax/oss/driver/api/core/data/TupleValue;
4 72 3 length I
5 72 4 position I
14 72 5 registry Lcom/datastax/oss/driver/api/core/type/codec/registry/CodecRegistry;
15 72 6 field I
26 27 7 n I
34 66 7 n I
28 34 8 e Ljava/lang/IllegalArgumentException;
35 66 8 fieldValue Ljava/lang/String;
36 66 9 elementType Lcom/datastax/oss/driver/api/core/type/DataType;
37 66 10 codec Lcom/datastax/oss/driver/api/core/type/codec/TypeCodec<Ljava/lang/Object;>;
38 39 11 parsed Ljava/lang/Object;
46 66 11 parsed Ljava/lang/Object;
40 46 12 e Ljava/lang/Exception;
Exception table:
from to target type
25 26 27 Class java.lang.IllegalArgumentException
37 38 39 Class java.lang.Exception
RuntimeInvisibleAnnotations:
edu.umd.cs.findbugs.annotations.Nullable()
RuntimeInvisibleParameterAnnotations:
0:
edu.umd.cs.findbugs.annotations.Nullable()
MethodParameters:
Name Flags
value
public java.lang.Object 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: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=3, locals=3, args_size=3
0: aload 0
aload 1
aload 2
invokevirtual com.datastax.oss.driver.internal.core.type.codec.TupleCodec.decode:(Ljava/nio/ByteBuffer;Lcom/datastax/oss/driver/api/core/ProtocolVersion;)Lcom/datastax/oss/driver/api/core/data/TupleValue;
areturn
LocalVariableTable:
Start End Slot Name Signature
public java.lang.Object parse(java.lang.String);
descriptor: (Ljava/lang/String;)Ljava/lang/Object;
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
0: aload 0
aload 1
invokevirtual com.datastax.oss.driver.internal.core.type.codec.TupleCodec.parse:(Ljava/lang/String;)Lcom/datastax/oss/driver/api/core/data/TupleValue;
areturn
LocalVariableTable:
Start End Slot Name Signature
public java.nio.ByteBuffer encode(java.lang.Object, com.datastax.oss.driver.api.core.ProtocolVersion);
descriptor: (Ljava/lang/Object;Lcom/datastax/oss/driver/api/core/ProtocolVersion;)Ljava/nio/ByteBuffer;
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=3, locals=3, args_size=3
0: aload 0
aload 1
checkcast com.datastax.oss.driver.api.core.data.TupleValue
aload 2
invokevirtual com.datastax.oss.driver.internal.core.type.codec.TupleCodec.encode:(Lcom/datastax/oss/driver/api/core/data/TupleValue;Lcom/datastax/oss/driver/api/core/ProtocolVersion;)Ljava/nio/ByteBuffer;
areturn
LocalVariableTable:
Start End Slot Name Signature
public java.lang.String format(java.lang.Object);
descriptor: (Ljava/lang/Object;)Ljava/lang/String;
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
0: aload 0
aload 1
checkcast com.datastax.oss.driver.api.core.data.TupleValue
invokevirtual com.datastax.oss.driver.internal.core.type.codec.TupleCodec.format:(Lcom/datastax/oss/driver/api/core/data/TupleValue;)Ljava/lang/String;
areturn
LocalVariableTable:
Start End Slot Name Signature
}
Signature: Ljava/lang/Object;Lcom/datastax/oss/driver/api/core/type/codec/TypeCodec<Lcom/datastax/oss/driver/api/core/data/TupleValue;>;
SourceFile: "TupleCodec.java"
RuntimeVisibleAnnotations:
net.jcip.annotations.ThreadSafe()