public class org.apache.cassandra.cql3.selection.Selectable$WithFieldSelection implements org.apache.cassandra.cql3.selection.Selectable
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.apache.cassandra.cql3.selection.Selectable$WithFieldSelection
  super_class: java.lang.Object
{
  public final org.apache.cassandra.cql3.selection.Selectable selected;
    descriptor: Lorg/apache/cassandra/cql3/selection/Selectable;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL

  public final org.apache.cassandra.cql3.FieldIdentifier field;
    descriptor: Lorg/apache/cassandra/cql3/FieldIdentifier;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL

  public void <init>(org.apache.cassandra.cql3.selection.Selectable, org.apache.cassandra.cql3.FieldIdentifier);
    descriptor: (Lorg/apache/cassandra/cql3/selection/Selectable;Lorg/apache/cassandra/cql3/FieldIdentifier;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // org.apache.cassandra.cql3.selection.Selectable$WithFieldSelection this
        start local 1 // org.apache.cassandra.cql3.selection.Selectable selected
        start local 2 // org.apache.cassandra.cql3.FieldIdentifier field
         0: .line 422
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 424
            aload 0 /* this */
            aload 1 /* selected */
            putfield org.apache.cassandra.cql3.selection.Selectable$WithFieldSelection.selected:Lorg/apache/cassandra/cql3/selection/Selectable;
         2: .line 425
            aload 0 /* this */
            aload 2 /* field */
            putfield org.apache.cassandra.cql3.selection.Selectable$WithFieldSelection.field:Lorg/apache/cassandra/cql3/FieldIdentifier;
         3: .line 426
            return
        end local 2 // org.apache.cassandra.cql3.FieldIdentifier field
        end local 1 // org.apache.cassandra.cql3.selection.Selectable selected
        end local 0 // org.apache.cassandra.cql3.selection.Selectable$WithFieldSelection this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    4     0      this  Lorg/apache/cassandra/cql3/selection/Selectable$WithFieldSelection;
            0    4     1  selected  Lorg/apache/cassandra/cql3/selection/Selectable;
            0    4     2     field  Lorg/apache/cassandra/cql3/FieldIdentifier;
    MethodParameters:
          Name  Flags
      selected  
      field     

  public java.lang.String toString();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=1, args_size=1
        start local 0 // org.apache.cassandra.cql3.selection.Selectable$WithFieldSelection this
         0: .line 431
            ldc "%s.%s"
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.selection.Selectable$WithFieldSelection.selected:Lorg/apache/cassandra/cql3/selection/Selectable;
            aastore
            dup
            iconst_1
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.selection.Selectable$WithFieldSelection.field:Lorg/apache/cassandra/cql3/FieldIdentifier;
            aastore
            invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            areturn
        end local 0 // org.apache.cassandra.cql3.selection.Selectable$WithFieldSelection this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/cassandra/cql3/selection/Selectable$WithFieldSelection;

  public org.apache.cassandra.cql3.selection.Selector$Factory newSelectorFactory(org.apache.cassandra.config.CFMetaData, org.apache.cassandra.db.marshal.AbstractType<?>, java.util.List<org.apache.cassandra.config.ColumnDefinition>, org.apache.cassandra.cql3.VariableSpecifications);
    descriptor: (Lorg/apache/cassandra/config/CFMetaData;Lorg/apache/cassandra/db/marshal/AbstractType;Ljava/util/List;Lorg/apache/cassandra/cql3/VariableSpecifications;)Lorg/apache/cassandra/cql3/selection/Selector$Factory;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=9, args_size=5
        start local 0 // org.apache.cassandra.cql3.selection.Selectable$WithFieldSelection this
        start local 1 // org.apache.cassandra.config.CFMetaData cfm
        start local 2 // org.apache.cassandra.db.marshal.AbstractType expectedType
        start local 3 // java.util.List defs
        start local 4 // org.apache.cassandra.cql3.VariableSpecifications boundNames
         0: .line 436
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.selection.Selectable$WithFieldSelection.selected:Lorg/apache/cassandra/cql3/selection/Selectable;
            aload 1 /* cfm */
            aconst_null
            aload 3 /* defs */
            aload 4 /* boundNames */
            invokeinterface org.apache.cassandra.cql3.selection.Selectable.newSelectorFactory:(Lorg/apache/cassandra/config/CFMetaData;Lorg/apache/cassandra/db/marshal/AbstractType;Ljava/util/List;Lorg/apache/cassandra/cql3/VariableSpecifications;)Lorg/apache/cassandra/cql3/selection/Selector$Factory;
            astore 5 /* factory */
        start local 5 // org.apache.cassandra.cql3.selection.Selector$Factory factory
         1: .line 437
            aload 5 /* factory */
            aload 1 /* cfm */
            invokevirtual org.apache.cassandra.cql3.selection.Selector$Factory.getColumnSpecification:(Lorg/apache/cassandra/config/CFMetaData;)Lorg/apache/cassandra/cql3/ColumnSpecification;
            getfield org.apache.cassandra.cql3.ColumnSpecification.type:Lorg/apache/cassandra/db/marshal/AbstractType;
            astore 6 /* type */
        start local 6 // org.apache.cassandra.db.marshal.AbstractType type
         2: .line 438
            aload 6 /* type */
            invokevirtual org.apache.cassandra.db.marshal.AbstractType.isUDT:()Z
            ifne 9
         3: .line 440
            new org.apache.cassandra.exceptions.InvalidRequestException
            dup
         4: .line 441
            ldc "Invalid field selection: %s of type %s is not a user type"
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
         5: .line 442
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.selection.Selectable$WithFieldSelection.selected:Lorg/apache/cassandra/cql3/selection/Selectable;
            aastore
            dup
            iconst_1
         6: .line 443
            aload 6 /* type */
            invokevirtual org.apache.cassandra.db.marshal.AbstractType.asCQL3Type:()Lorg/apache/cassandra/cql3/CQL3Type;
            aastore
         7: .line 441
            invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
         8: .line 440
            invokespecial org.apache.cassandra.exceptions.InvalidRequestException.<init>:(Ljava/lang/String;)V
            athrow
         9: .line 446
      StackMap locals: org.apache.cassandra.cql3.selection.Selector$Factory org.apache.cassandra.db.marshal.AbstractType
      StackMap stack:
            aload 6 /* type */
            checkcast org.apache.cassandra.db.marshal.UserType
            astore 7 /* ut */
        start local 7 // org.apache.cassandra.db.marshal.UserType ut
        10: .line 447
            aload 7 /* ut */
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.selection.Selectable$WithFieldSelection.field:Lorg/apache/cassandra/cql3/FieldIdentifier;
            invokevirtual org.apache.cassandra.db.marshal.UserType.fieldPosition:(Lorg/apache/cassandra/cql3/FieldIdentifier;)I
            istore 8 /* fieldIndex */
        start local 8 // int fieldIndex
        11: .line 448
            iload 8 /* fieldIndex */
            iconst_m1
            if_icmpne 15
        12: .line 450
            new org.apache.cassandra.exceptions.InvalidRequestException
            dup
            ldc "%s of type %s has no field %s"
            iconst_3
            anewarray java.lang.Object
            dup
            iconst_0
        13: .line 451
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.selection.Selectable$WithFieldSelection.selected:Lorg/apache/cassandra/cql3/selection/Selectable;
            aastore
            dup
            iconst_1
            aload 6 /* type */
            invokevirtual org.apache.cassandra.db.marshal.AbstractType.asCQL3Type:()Lorg/apache/cassandra/cql3/CQL3Type;
            aastore
            dup
            iconst_2
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.selection.Selectable$WithFieldSelection.field:Lorg/apache/cassandra/cql3/FieldIdentifier;
            aastore
        14: .line 450
            invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokespecial org.apache.cassandra.exceptions.InvalidRequestException.<init>:(Ljava/lang/String;)V
            athrow
        15: .line 454
      StackMap locals: org.apache.cassandra.db.marshal.UserType int
      StackMap stack:
            aload 7 /* ut */
            iload 8 /* fieldIndex */
            aload 5 /* factory */
            invokestatic org.apache.cassandra.cql3.selection.FieldSelector.newFactory:(Lorg/apache/cassandra/db/marshal/UserType;ILorg/apache/cassandra/cql3/selection/Selector$Factory;)Lorg/apache/cassandra/cql3/selection/Selector$Factory;
            areturn
        end local 8 // int fieldIndex
        end local 7 // org.apache.cassandra.db.marshal.UserType ut
        end local 6 // org.apache.cassandra.db.marshal.AbstractType type
        end local 5 // org.apache.cassandra.cql3.selection.Selector$Factory factory
        end local 4 // org.apache.cassandra.cql3.VariableSpecifications boundNames
        end local 3 // java.util.List defs
        end local 2 // org.apache.cassandra.db.marshal.AbstractType expectedType
        end local 1 // org.apache.cassandra.config.CFMetaData cfm
        end local 0 // org.apache.cassandra.cql3.selection.Selectable$WithFieldSelection this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   16     0          this  Lorg/apache/cassandra/cql3/selection/Selectable$WithFieldSelection;
            0   16     1           cfm  Lorg/apache/cassandra/config/CFMetaData;
            0   16     2  expectedType  Lorg/apache/cassandra/db/marshal/AbstractType<*>;
            0   16     3          defs  Ljava/util/List<Lorg/apache/cassandra/config/ColumnDefinition;>;
            0   16     4    boundNames  Lorg/apache/cassandra/cql3/VariableSpecifications;
            1   16     5       factory  Lorg/apache/cassandra/cql3/selection/Selector$Factory;
            2   16     6          type  Lorg/apache/cassandra/db/marshal/AbstractType<*>;
           10   16     7            ut  Lorg/apache/cassandra/db/marshal/UserType;
           11   16     8    fieldIndex  I
    Signature: (Lorg/apache/cassandra/config/CFMetaData;Lorg/apache/cassandra/db/marshal/AbstractType<*>;Ljava/util/List<Lorg/apache/cassandra/config/ColumnDefinition;>;Lorg/apache/cassandra/cql3/VariableSpecifications;)Lorg/apache/cassandra/cql3/selection/Selector$Factory;
    MethodParameters:
              Name  Flags
      cfm           
      expectedType  
      defs          
      boundNames    

  public org.apache.cassandra.db.marshal.AbstractType<?> getExactTypeIfKnown(java.lang.String);
    descriptor: (Ljava/lang/String;)Lorg/apache/cassandra/db/marshal/AbstractType;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=5, args_size=2
        start local 0 // org.apache.cassandra.cql3.selection.Selectable$WithFieldSelection this
        start local 1 // java.lang.String keyspace
         0: .line 459
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.selection.Selectable$WithFieldSelection.selected:Lorg/apache/cassandra/cql3/selection/Selectable;
            aload 1 /* keyspace */
            invokeinterface org.apache.cassandra.cql3.selection.Selectable.getExactTypeIfKnown:(Ljava/lang/String;)Lorg/apache/cassandra/db/marshal/AbstractType;
            astore 2 /* selectedType */
        start local 2 // org.apache.cassandra.db.marshal.AbstractType selectedType
         1: .line 460
            aload 2 /* selectedType */
            ifnull 2
            aload 2 /* selectedType */
            instanceof org.apache.cassandra.db.marshal.UserType
            ifne 3
         2: .line 461
      StackMap locals: org.apache.cassandra.db.marshal.AbstractType
      StackMap stack:
            aconst_null
            areturn
         3: .line 463
      StackMap locals:
      StackMap stack:
            aload 2 /* selectedType */
            checkcast org.apache.cassandra.db.marshal.UserType
            astore 3 /* ut */
        start local 3 // org.apache.cassandra.db.marshal.UserType ut
         4: .line 464
            aload 3 /* ut */
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.selection.Selectable$WithFieldSelection.field:Lorg/apache/cassandra/cql3/FieldIdentifier;
            invokevirtual org.apache.cassandra.db.marshal.UserType.fieldPosition:(Lorg/apache/cassandra/cql3/FieldIdentifier;)I
            istore 4 /* fieldIndex */
        start local 4 // int fieldIndex
         5: .line 465
            iload 4 /* fieldIndex */
            iconst_m1
            if_icmpne 7
         6: .line 466
            aconst_null
            areturn
         7: .line 468
      StackMap locals: org.apache.cassandra.db.marshal.UserType int
      StackMap stack:
            aload 3 /* ut */
            iload 4 /* fieldIndex */
            invokevirtual org.apache.cassandra.db.marshal.UserType.fieldType:(I)Lorg/apache/cassandra/db/marshal/AbstractType;
            areturn
        end local 4 // int fieldIndex
        end local 3 // org.apache.cassandra.db.marshal.UserType ut
        end local 2 // org.apache.cassandra.db.marshal.AbstractType selectedType
        end local 1 // java.lang.String keyspace
        end local 0 // org.apache.cassandra.cql3.selection.Selectable$WithFieldSelection this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    8     0          this  Lorg/apache/cassandra/cql3/selection/Selectable$WithFieldSelection;
            0    8     1      keyspace  Ljava/lang/String;
            1    8     2  selectedType  Lorg/apache/cassandra/db/marshal/AbstractType<*>;
            4    8     3            ut  Lorg/apache/cassandra/db/marshal/UserType;
            5    8     4    fieldIndex  I
    Signature: (Ljava/lang/String;)Lorg/apache/cassandra/db/marshal/AbstractType<*>;
    MethodParameters:
          Name  Flags
      keyspace  
}
SourceFile: "Selectable.java"
NestHost: org.apache.cassandra.cql3.selection.Selectable
InnerClasses:
  public WithFieldSelection = org.apache.cassandra.cql3.selection.Selectable$WithFieldSelection of org.apache.cassandra.cql3.selection.Selectable
  public Raw = org.apache.cassandra.cql3.selection.Selectable$WithFieldSelection$Raw of org.apache.cassandra.cql3.selection.Selectable$WithFieldSelection
  public abstract Factory = org.apache.cassandra.cql3.selection.Selector$Factory of org.apache.cassandra.cql3.selection.Selector