public final class org.apache.cassandra.cql3.functions.UDFContextImpl implements org.apache.cassandra.cql3.functions.UDFContext
  minor version: 0
  major version: 59
  flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
  this_class: org.apache.cassandra.cql3.functions.UDFContextImpl
  super_class: java.lang.Object
{
  private final org.apache.cassandra.schema.KeyspaceMetadata keyspaceMetadata;
    descriptor: Lorg/apache/cassandra/schema/KeyspaceMetadata;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final java.util.Map<java.lang.String, com.datastax.driver.core.TypeCodec<java.lang.Object>> byName;
    descriptor: Ljava/util/Map;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/Map<Ljava/lang/String;Lcom/datastax/driver/core/TypeCodec<Ljava/lang/Object;>;>;

  private final com.datastax.driver.core.TypeCodec<java.lang.Object>[] argCodecs;
    descriptor: [Lcom/datastax/driver/core/TypeCodec;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: [Lcom/datastax/driver/core/TypeCodec<Ljava/lang/Object;>;

  private final com.datastax.driver.core.TypeCodec<java.lang.Object> returnCodec;
    descriptor: Lcom/datastax/driver/core/TypeCodec;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Lcom/datastax/driver/core/TypeCodec<Ljava/lang/Object;>;

  void <init>(java.util.List<org.apache.cassandra.cql3.ColumnIdentifier>, com.datastax.driver.core.TypeCodec<java.lang.Object>[], com.datastax.driver.core.TypeCodec<java.lang.Object>, org.apache.cassandra.schema.KeyspaceMetadata);
    descriptor: (Ljava/util/List;[Lcom/datastax/driver/core/TypeCodec;Lcom/datastax/driver/core/TypeCodec;Lorg/apache/cassandra/schema/KeyspaceMetadata;)V
    flags: (0x0000) 
    Code:
      stack=4, locals=6, args_size=5
        start local 0 // org.apache.cassandra.cql3.functions.UDFContextImpl this
        start local 1 // java.util.List argNames
        start local 2 // com.datastax.driver.core.TypeCodec[] argCodecs
        start local 3 // com.datastax.driver.core.TypeCodec returnCodec
        start local 4 // org.apache.cassandra.schema.KeyspaceMetadata keyspaceMetadata
         0: .line 48
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 44
            aload 0 /* this */
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
            putfield org.apache.cassandra.cql3.functions.UDFContextImpl.byName:Ljava/util/Map;
         2: .line 51
            iconst_0
            istore 5 /* i */
        start local 5 // int i
         3: goto 6
         4: .line 52
      StackMap locals: org.apache.cassandra.cql3.functions.UDFContextImpl java.util.List com.datastax.driver.core.TypeCodec[] com.datastax.driver.core.TypeCodec org.apache.cassandra.schema.KeyspaceMetadata int
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.functions.UDFContextImpl.byName:Ljava/util/Map;
            aload 1 /* argNames */
            iload 5 /* i */
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast org.apache.cassandra.cql3.ColumnIdentifier
            invokevirtual org.apache.cassandra.cql3.ColumnIdentifier.toString:()Ljava/lang/String;
            aload 2 /* argCodecs */
            iload 5 /* i */
            aaload
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         5: .line 51
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
         6: iload 5 /* i */
            aload 1 /* argNames */
            invokeinterface java.util.List.size:()I
            if_icmplt 4
        end local 5 // int i
         7: .line 53
            aload 0 /* this */
            aload 2 /* argCodecs */
            putfield org.apache.cassandra.cql3.functions.UDFContextImpl.argCodecs:[Lcom/datastax/driver/core/TypeCodec;
         8: .line 54
            aload 0 /* this */
            aload 3 /* returnCodec */
            putfield org.apache.cassandra.cql3.functions.UDFContextImpl.returnCodec:Lcom/datastax/driver/core/TypeCodec;
         9: .line 55
            aload 0 /* this */
            aload 4 /* keyspaceMetadata */
            putfield org.apache.cassandra.cql3.functions.UDFContextImpl.keyspaceMetadata:Lorg/apache/cassandra/schema/KeyspaceMetadata;
        10: .line 56
            return
        end local 4 // org.apache.cassandra.schema.KeyspaceMetadata keyspaceMetadata
        end local 3 // com.datastax.driver.core.TypeCodec returnCodec
        end local 2 // com.datastax.driver.core.TypeCodec[] argCodecs
        end local 1 // java.util.List argNames
        end local 0 // org.apache.cassandra.cql3.functions.UDFContextImpl this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   11     0              this  Lorg/apache/cassandra/cql3/functions/UDFContextImpl;
            0   11     1          argNames  Ljava/util/List<Lorg/apache/cassandra/cql3/ColumnIdentifier;>;
            0   11     2         argCodecs  [Lcom/datastax/driver/core/TypeCodec;
            0   11     3       returnCodec  Lcom/datastax/driver/core/TypeCodec<Ljava/lang/Object;>;
            0   11     4  keyspaceMetadata  Lorg/apache/cassandra/schema/KeyspaceMetadata;
            3    7     5                 i  I
    Signature: (Ljava/util/List<Lorg/apache/cassandra/cql3/ColumnIdentifier;>;[Lcom/datastax/driver/core/TypeCodec<Ljava/lang/Object;>;Lcom/datastax/driver/core/TypeCodec<Ljava/lang/Object;>;Lorg/apache/cassandra/schema/KeyspaceMetadata;)V
    MethodParameters:
                  Name  Flags
      argNames          
      argCodecs         
      returnCodec       
      keyspaceMetadata  

  public com.datastax.driver.core.UDTValue newArgUDTValue(java.lang.String);
    descriptor: (Ljava/lang/String;)Lcom/datastax/driver/core/UDTValue;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.cassandra.cql3.functions.UDFContextImpl this
        start local 1 // java.lang.String argName
         0: .line 60
            aload 0 /* this */
            aload 1 /* argName */
            invokevirtual org.apache.cassandra.cql3.functions.UDFContextImpl.codecFor:(Ljava/lang/String;)Lcom/datastax/driver/core/TypeCodec;
            invokestatic org.apache.cassandra.cql3.functions.UDFContextImpl.newUDTValue:(Lcom/datastax/driver/core/TypeCodec;)Lcom/datastax/driver/core/UDTValue;
            areturn
        end local 1 // java.lang.String argName
        end local 0 // org.apache.cassandra.cql3.functions.UDFContextImpl this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/apache/cassandra/cql3/functions/UDFContextImpl;
            0    1     1  argName  Ljava/lang/String;
    MethodParameters:
         Name  Flags
      argName  

  public com.datastax.driver.core.UDTValue newArgUDTValue(int);
    descriptor: (I)Lcom/datastax/driver/core/UDTValue;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.cassandra.cql3.functions.UDFContextImpl this
        start local 1 // int argNum
         0: .line 65
            aload 0 /* this */
            iload 1 /* argNum */
            invokevirtual org.apache.cassandra.cql3.functions.UDFContextImpl.codecFor:(I)Lcom/datastax/driver/core/TypeCodec;
            invokestatic org.apache.cassandra.cql3.functions.UDFContextImpl.newUDTValue:(Lcom/datastax/driver/core/TypeCodec;)Lcom/datastax/driver/core/UDTValue;
            areturn
        end local 1 // int argNum
        end local 0 // org.apache.cassandra.cql3.functions.UDFContextImpl this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0    this  Lorg/apache/cassandra/cql3/functions/UDFContextImpl;
            0    1     1  argNum  I
    MethodParameters:
        Name  Flags
      argNum  

  public com.datastax.driver.core.UDTValue newReturnUDTValue();
    descriptor: ()Lcom/datastax/driver/core/UDTValue;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.cassandra.cql3.functions.UDFContextImpl this
         0: .line 70
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.functions.UDFContextImpl.returnCodec:Lcom/datastax/driver/core/TypeCodec;
            invokestatic org.apache.cassandra.cql3.functions.UDFContextImpl.newUDTValue:(Lcom/datastax/driver/core/TypeCodec;)Lcom/datastax/driver/core/UDTValue;
            areturn
        end local 0 // org.apache.cassandra.cql3.functions.UDFContextImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/cassandra/cql3/functions/UDFContextImpl;

  public com.datastax.driver.core.UDTValue newUDTValue(java.lang.String);
    descriptor: (Ljava/lang/String;)Lcom/datastax/driver/core/UDTValue;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=2
        start local 0 // org.apache.cassandra.cql3.functions.UDFContextImpl this
        start local 1 // java.lang.String udtName
         0: .line 75
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.functions.UDFContextImpl.keyspaceMetadata:Lorg/apache/cassandra/schema/KeyspaceMetadata;
            getfield org.apache.cassandra.schema.KeyspaceMetadata.types:Lorg/apache/cassandra/schema/Types;
            aload 1 /* udtName */
            invokestatic org.apache.cassandra.utils.ByteBufferUtil.bytes:(Ljava/lang/String;)Ljava/nio/ByteBuffer;
            invokevirtual org.apache.cassandra.schema.Types.get:(Ljava/nio/ByteBuffer;)Ljava/util/Optional;
            astore 2 /* udtType */
        start local 2 // java.util.Optional udtType
         1: .line 76
            aload 2 /* udtType */
         2: .line 77
            aload 0 /* this */
            aload 1 /* udtName */
            invokedynamic get(Lorg/apache/cassandra/cql3/functions/UDFContextImpl;Ljava/lang/String;)Ljava/util/function/Supplier;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  ()Ljava/lang/Object;
                  org/apache/cassandra/cql3/functions/UDFContextImpl.lambda$0(Ljava/lang/String;)Ljava/lang/IllegalArgumentException; (7)
                  ()Ljava/lang/IllegalArgumentException;
         3: .line 76
            invokevirtual java.util.Optional.orElseThrow:(Ljava/util/function/Supplier;)Ljava/lang/Object;
            checkcast org.apache.cassandra.db.marshal.AbstractType
            invokestatic org.apache.cassandra.cql3.functions.UDHelper.driverType:(Lorg/apache/cassandra/db/marshal/AbstractType;)Lcom/datastax/driver/core/DataType;
            astore 3 /* dataType */
        start local 3 // com.datastax.driver.core.DataType dataType
         4: .line 79
            aload 3 /* dataType */
            invokestatic org.apache.cassandra.cql3.functions.UDFContextImpl.newUDTValue:(Lcom/datastax/driver/core/DataType;)Lcom/datastax/driver/core/UDTValue;
            areturn
        end local 3 // com.datastax.driver.core.DataType dataType
        end local 2 // java.util.Optional udtType
        end local 1 // java.lang.String udtName
        end local 0 // org.apache.cassandra.cql3.functions.UDFContextImpl this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    5     0      this  Lorg/apache/cassandra/cql3/functions/UDFContextImpl;
            0    5     1   udtName  Ljava/lang/String;
            1    5     2   udtType  Ljava/util/Optional<Lorg/apache/cassandra/db/marshal/UserType;>;
            4    5     3  dataType  Lcom/datastax/driver/core/DataType;
    MethodParameters:
         Name  Flags
      udtName  

  public com.datastax.driver.core.TupleValue newArgTupleValue(java.lang.String);
    descriptor: (Ljava/lang/String;)Lcom/datastax/driver/core/TupleValue;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.cassandra.cql3.functions.UDFContextImpl this
        start local 1 // java.lang.String argName
         0: .line 84
            aload 0 /* this */
            aload 1 /* argName */
            invokevirtual org.apache.cassandra.cql3.functions.UDFContextImpl.codecFor:(Ljava/lang/String;)Lcom/datastax/driver/core/TypeCodec;
            invokestatic org.apache.cassandra.cql3.functions.UDFContextImpl.newTupleValue:(Lcom/datastax/driver/core/TypeCodec;)Lcom/datastax/driver/core/TupleValue;
            areturn
        end local 1 // java.lang.String argName
        end local 0 // org.apache.cassandra.cql3.functions.UDFContextImpl this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/apache/cassandra/cql3/functions/UDFContextImpl;
            0    1     1  argName  Ljava/lang/String;
    MethodParameters:
         Name  Flags
      argName  

  public com.datastax.driver.core.TupleValue newArgTupleValue(int);
    descriptor: (I)Lcom/datastax/driver/core/TupleValue;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.cassandra.cql3.functions.UDFContextImpl this
        start local 1 // int argNum
         0: .line 89
            aload 0 /* this */
            iload 1 /* argNum */
            invokevirtual org.apache.cassandra.cql3.functions.UDFContextImpl.codecFor:(I)Lcom/datastax/driver/core/TypeCodec;
            invokestatic org.apache.cassandra.cql3.functions.UDFContextImpl.newTupleValue:(Lcom/datastax/driver/core/TypeCodec;)Lcom/datastax/driver/core/TupleValue;
            areturn
        end local 1 // int argNum
        end local 0 // org.apache.cassandra.cql3.functions.UDFContextImpl this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0    this  Lorg/apache/cassandra/cql3/functions/UDFContextImpl;
            0    1     1  argNum  I
    MethodParameters:
        Name  Flags
      argNum  

  public com.datastax.driver.core.TupleValue newReturnTupleValue();
    descriptor: ()Lcom/datastax/driver/core/TupleValue;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.cassandra.cql3.functions.UDFContextImpl this
         0: .line 94
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.functions.UDFContextImpl.returnCodec:Lcom/datastax/driver/core/TypeCodec;
            invokestatic org.apache.cassandra.cql3.functions.UDFContextImpl.newTupleValue:(Lcom/datastax/driver/core/TypeCodec;)Lcom/datastax/driver/core/TupleValue;
            areturn
        end local 0 // org.apache.cassandra.cql3.functions.UDFContextImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/cassandra/cql3/functions/UDFContextImpl;

  public com.datastax.driver.core.TupleValue newTupleValue(java.lang.String);
    descriptor: (Ljava/lang/String;)Lcom/datastax/driver/core/TupleValue;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=2
        start local 0 // org.apache.cassandra.cql3.functions.UDFContextImpl this
        start local 1 // java.lang.String cqlDefinition
         0: .line 99
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.functions.UDFContextImpl.keyspaceMetadata:Lorg/apache/cassandra/schema/KeyspaceMetadata;
            getfield org.apache.cassandra.schema.KeyspaceMetadata.name:Ljava/lang/String;
            aload 1 /* cqlDefinition */
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.functions.UDFContextImpl.keyspaceMetadata:Lorg/apache/cassandra/schema/KeyspaceMetadata;
            getfield org.apache.cassandra.schema.KeyspaceMetadata.types:Lorg/apache/cassandra/schema/Types;
            invokestatic org.apache.cassandra.schema.CQLTypeParser.parse:(Ljava/lang/String;Ljava/lang/String;Lorg/apache/cassandra/schema/Types;)Lorg/apache/cassandra/db/marshal/AbstractType;
            astore 2 /* abstractType */
        start local 2 // org.apache.cassandra.db.marshal.AbstractType abstractType
         1: .line 100
            aload 2 /* abstractType */
            invokestatic org.apache.cassandra.cql3.functions.UDHelper.driverType:(Lorg/apache/cassandra/db/marshal/AbstractType;)Lcom/datastax/driver/core/DataType;
            astore 3 /* dataType */
        start local 3 // com.datastax.driver.core.DataType dataType
         2: .line 101
            aload 3 /* dataType */
            invokestatic org.apache.cassandra.cql3.functions.UDFContextImpl.newTupleValue:(Lcom/datastax/driver/core/DataType;)Lcom/datastax/driver/core/TupleValue;
            areturn
        end local 3 // com.datastax.driver.core.DataType dataType
        end local 2 // org.apache.cassandra.db.marshal.AbstractType abstractType
        end local 1 // java.lang.String cqlDefinition
        end local 0 // org.apache.cassandra.cql3.functions.UDFContextImpl this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    3     0           this  Lorg/apache/cassandra/cql3/functions/UDFContextImpl;
            0    3     1  cqlDefinition  Ljava/lang/String;
            1    3     2   abstractType  Lorg/apache/cassandra/db/marshal/AbstractType<*>;
            2    3     3       dataType  Lcom/datastax/driver/core/DataType;
    MethodParameters:
               Name  Flags
      cqlDefinition  

  private com.datastax.driver.core.TypeCodec<java.lang.Object> codecFor(int);
    descriptor: (I)Lcom/datastax/driver/core/TypeCodec;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // org.apache.cassandra.cql3.functions.UDFContextImpl this
        start local 1 // int argNum
         0: .line 106
            iload 1 /* argNum */
            iflt 1
            iload 1 /* argNum */
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.functions.UDFContextImpl.argCodecs:[Lcom/datastax/driver/core/TypeCodec;
            arraylength
            if_icmplt 2
         1: .line 107
      StackMap locals:
      StackMap stack:
            new java.lang.IllegalArgumentException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Function does not declare an argument with index "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 1 /* argNum */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 108
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.functions.UDFContextImpl.argCodecs:[Lcom/datastax/driver/core/TypeCodec;
            iload 1 /* argNum */
            aaload
            areturn
        end local 1 // int argNum
        end local 0 // org.apache.cassandra.cql3.functions.UDFContextImpl this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    3     0    this  Lorg/apache/cassandra/cql3/functions/UDFContextImpl;
            0    3     1  argNum  I
    Signature: (I)Lcom/datastax/driver/core/TypeCodec<Ljava/lang/Object;>;
    MethodParameters:
        Name  Flags
      argNum  

  private com.datastax.driver.core.TypeCodec<java.lang.Object> codecFor(java.lang.String);
    descriptor: (Ljava/lang/String;)Lcom/datastax/driver/core/TypeCodec;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // org.apache.cassandra.cql3.functions.UDFContextImpl this
        start local 1 // java.lang.String argName
         0: .line 113
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.functions.UDFContextImpl.byName:Ljava/util/Map;
            aload 1 /* argName */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast com.datastax.driver.core.TypeCodec
            astore 2 /* codec */
        start local 2 // com.datastax.driver.core.TypeCodec codec
         1: .line 114
            aload 2 /* codec */
            ifnonnull 3
         2: .line 115
            new java.lang.IllegalArgumentException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Function does not declare an argument named '"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* argName */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            bipush 39
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         3: .line 116
      StackMap locals: com.datastax.driver.core.TypeCodec
      StackMap stack:
            aload 2 /* codec */
            areturn
        end local 2 // com.datastax.driver.core.TypeCodec codec
        end local 1 // java.lang.String argName
        end local 0 // org.apache.cassandra.cql3.functions.UDFContextImpl this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    4     0     this  Lorg/apache/cassandra/cql3/functions/UDFContextImpl;
            0    4     1  argName  Ljava/lang/String;
            1    4     2    codec  Lcom/datastax/driver/core/TypeCodec<Ljava/lang/Object;>;
    Signature: (Ljava/lang/String;)Lcom/datastax/driver/core/TypeCodec<Ljava/lang/Object;>;
    MethodParameters:
         Name  Flags
      argName  

  private static com.datastax.driver.core.UDTValue newUDTValue(com.datastax.driver.core.TypeCodec<java.lang.Object>);
    descriptor: (Lcom/datastax/driver/core/TypeCodec;)Lcom/datastax/driver/core/UDTValue;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=1, locals=2, args_size=1
        start local 0 // com.datastax.driver.core.TypeCodec codec
         0: .line 121
            aload 0 /* codec */
            invokevirtual com.datastax.driver.core.TypeCodec.getCqlType:()Lcom/datastax/driver/core/DataType;
            astore 1 /* dataType */
        start local 1 // com.datastax.driver.core.DataType dataType
         1: .line 122
            aload 1 /* dataType */
            invokestatic org.apache.cassandra.cql3.functions.UDFContextImpl.newUDTValue:(Lcom/datastax/driver/core/DataType;)Lcom/datastax/driver/core/UDTValue;
            areturn
        end local 1 // com.datastax.driver.core.DataType dataType
        end local 0 // com.datastax.driver.core.TypeCodec codec
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0     codec  Lcom/datastax/driver/core/TypeCodec<Ljava/lang/Object;>;
            1    2     1  dataType  Lcom/datastax/driver/core/DataType;
    Signature: (Lcom/datastax/driver/core/TypeCodec<Ljava/lang/Object;>;)Lcom/datastax/driver/core/UDTValue;
    MethodParameters:
       Name  Flags
      codec  

  private static com.datastax.driver.core.UDTValue newUDTValue(com.datastax.driver.core.DataType);
    descriptor: (Lcom/datastax/driver/core/DataType;)Lcom/datastax/driver/core/UDTValue;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=2, args_size=1
        start local 0 // com.datastax.driver.core.DataType dataType
         0: .line 127
            aload 0 /* dataType */
            instanceof com.datastax.driver.core.UserType
            ifne 2
         1: .line 128
            new java.lang.IllegalStateException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Function argument is not a UDT but a "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* dataType */
            invokevirtual com.datastax.driver.core.DataType.getName:()Lcom/datastax/driver/core/DataType$Name;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 129
      StackMap locals:
      StackMap stack:
            aload 0 /* dataType */
            checkcast com.datastax.driver.core.UserType
            astore 1 /* userType */
        start local 1 // com.datastax.driver.core.UserType userType
         3: .line 130
            aload 1 /* userType */
            invokevirtual com.datastax.driver.core.UserType.newValue:()Lcom/datastax/driver/core/UDTValue;
            areturn
        end local 1 // com.datastax.driver.core.UserType userType
        end local 0 // com.datastax.driver.core.DataType dataType
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    4     0  dataType  Lcom/datastax/driver/core/DataType;
            3    4     1  userType  Lcom/datastax/driver/core/UserType;
    MethodParameters:
          Name  Flags
      dataType  

  private static com.datastax.driver.core.TupleValue newTupleValue(com.datastax.driver.core.TypeCodec<java.lang.Object>);
    descriptor: (Lcom/datastax/driver/core/TypeCodec;)Lcom/datastax/driver/core/TupleValue;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=1, locals=2, args_size=1
        start local 0 // com.datastax.driver.core.TypeCodec codec
         0: .line 135
            aload 0 /* codec */
            invokevirtual com.datastax.driver.core.TypeCodec.getCqlType:()Lcom/datastax/driver/core/DataType;
            astore 1 /* dataType */
        start local 1 // com.datastax.driver.core.DataType dataType
         1: .line 136
            aload 1 /* dataType */
            invokestatic org.apache.cassandra.cql3.functions.UDFContextImpl.newTupleValue:(Lcom/datastax/driver/core/DataType;)Lcom/datastax/driver/core/TupleValue;
            areturn
        end local 1 // com.datastax.driver.core.DataType dataType
        end local 0 // com.datastax.driver.core.TypeCodec codec
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0     codec  Lcom/datastax/driver/core/TypeCodec<Ljava/lang/Object;>;
            1    2     1  dataType  Lcom/datastax/driver/core/DataType;
    Signature: (Lcom/datastax/driver/core/TypeCodec<Ljava/lang/Object;>;)Lcom/datastax/driver/core/TupleValue;
    MethodParameters:
       Name  Flags
      codec  

  private static com.datastax.driver.core.TupleValue newTupleValue(com.datastax.driver.core.DataType);
    descriptor: (Lcom/datastax/driver/core/DataType;)Lcom/datastax/driver/core/TupleValue;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=2, args_size=1
        start local 0 // com.datastax.driver.core.DataType dataType
         0: .line 141
            aload 0 /* dataType */
            instanceof com.datastax.driver.core.TupleType
            ifne 2
         1: .line 142
            new java.lang.IllegalStateException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Function argument is not a tuple type but a "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* dataType */
            invokevirtual com.datastax.driver.core.DataType.getName:()Lcom/datastax/driver/core/DataType$Name;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 143
      StackMap locals:
      StackMap stack:
            aload 0 /* dataType */
            checkcast com.datastax.driver.core.TupleType
            astore 1 /* tupleType */
        start local 1 // com.datastax.driver.core.TupleType tupleType
         3: .line 144
            aload 1 /* tupleType */
            invokevirtual com.datastax.driver.core.TupleType.newValue:()Lcom/datastax/driver/core/TupleValue;
            areturn
        end local 1 // com.datastax.driver.core.TupleType tupleType
        end local 0 // com.datastax.driver.core.DataType dataType
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    4     0   dataType  Lcom/datastax/driver/core/DataType;
            3    4     1  tupleType  Lcom/datastax/driver/core/TupleType;
    MethodParameters:
          Name  Flags
      dataType  

  private java.lang.IllegalArgumentException lambda$0(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/IllegalArgumentException;
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // org.apache.cassandra.cql3.functions.UDFContextImpl this
         0: .line 77
            new java.lang.IllegalArgumentException
            dup
            new java.lang.StringBuilder
            dup
            ldc "No UDT named "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc " in keyspace "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.functions.UDFContextImpl.keyspaceMetadata:Lorg/apache/cassandra/schema/KeyspaceMetadata;
            getfield org.apache.cassandra.schema.KeyspaceMetadata.name:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            areturn
        end local 0 // org.apache.cassandra.cql3.functions.UDFContextImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/cassandra/cql3/functions/UDFContextImpl;
}
SourceFile: "UDFContextImpl.java"
InnerClasses:
  public Name = com.datastax.driver.core.DataType$Name of com.datastax.driver.core.DataType
  public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles