public abstract class org.apache.cassandra.cql3.restrictions.TokenRestriction implements org.apache.cassandra.cql3.restrictions.PartitionKeyRestrictions
  minor version: 0
  major version: 59
  flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
  this_class: org.apache.cassandra.cql3.restrictions.TokenRestriction
  super_class: java.lang.Object
{
  protected final java.util.List<org.apache.cassandra.config.ColumnDefinition> columnDefs;
    descriptor: Ljava/util/List;
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL
    Signature: Ljava/util/List<Lorg/apache/cassandra/config/ColumnDefinition;>;

  protected final org.apache.cassandra.config.CFMetaData metadata;
    descriptor: Lorg/apache/cassandra/config/CFMetaData;
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL

  public void <init>(org.apache.cassandra.config.CFMetaData, java.util.List<org.apache.cassandra.config.ColumnDefinition>);
    descriptor: (Lorg/apache/cassandra/config/CFMetaData;Ljava/util/List;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // org.apache.cassandra.cql3.restrictions.TokenRestriction this
        start local 1 // org.apache.cassandra.config.CFMetaData metadata
        start local 2 // java.util.List columnDefs
         0: .line 54
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 56
            aload 0 /* this */
            aload 2 /* columnDefs */
            putfield org.apache.cassandra.cql3.restrictions.TokenRestriction.columnDefs:Ljava/util/List;
         2: .line 57
            aload 0 /* this */
            aload 1 /* metadata */
            putfield org.apache.cassandra.cql3.restrictions.TokenRestriction.metadata:Lorg/apache/cassandra/config/CFMetaData;
         3: .line 58
            return
        end local 2 // java.util.List columnDefs
        end local 1 // org.apache.cassandra.config.CFMetaData metadata
        end local 0 // org.apache.cassandra.cql3.restrictions.TokenRestriction this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    4     0        this  Lorg/apache/cassandra/cql3/restrictions/TokenRestriction;
            0    4     1    metadata  Lorg/apache/cassandra/config/CFMetaData;
            0    4     2  columnDefs  Ljava/util/List<Lorg/apache/cassandra/config/ColumnDefinition;>;
    Signature: (Lorg/apache/cassandra/config/CFMetaData;Ljava/util/List<Lorg/apache/cassandra/config/ColumnDefinition;>;)V
    MethodParameters:
            Name  Flags
      metadata    
      columnDefs  

  public boolean hasIN();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.cassandra.cql3.restrictions.TokenRestriction this
         0: .line 62
            iconst_0
            ireturn
        end local 0 // org.apache.cassandra.cql3.restrictions.TokenRestriction this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/cassandra/cql3/restrictions/TokenRestriction;

  public boolean hasOnlyEqualityRestrictions();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.cassandra.cql3.restrictions.TokenRestriction this
         0: .line 67
            iconst_0
            ireturn
        end local 0 // org.apache.cassandra.cql3.restrictions.TokenRestriction this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/cassandra/cql3/restrictions/TokenRestriction;

  public java.util.Set<org.apache.cassandra.cql3.restrictions.Restriction> getRestrictions(org.apache.cassandra.config.ColumnDefinition);
    descriptor: (Lorg/apache/cassandra/config/ColumnDefinition;)Ljava/util/Set;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // org.apache.cassandra.cql3.restrictions.TokenRestriction this
        start local 1 // org.apache.cassandra.config.ColumnDefinition columnDef
         0: .line 73
            aload 0 /* this */
            invokestatic java.util.Collections.singleton:(Ljava/lang/Object;)Ljava/util/Set;
            areturn
        end local 1 // org.apache.cassandra.config.ColumnDefinition columnDef
        end local 0 // org.apache.cassandra.cql3.restrictions.TokenRestriction this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0       this  Lorg/apache/cassandra/cql3/restrictions/TokenRestriction;
            0    1     1  columnDef  Lorg/apache/cassandra/config/ColumnDefinition;
    Signature: (Lorg/apache/cassandra/config/ColumnDefinition;)Ljava/util/Set<Lorg/apache/cassandra/cql3/restrictions/Restriction;>;
    MethodParameters:
           Name  Flags
      columnDef  

  public final boolean isOnToken();
    descriptor: ()Z
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.cassandra.cql3.restrictions.TokenRestriction this
         0: .line 79
            iconst_1
            ireturn
        end local 0 // org.apache.cassandra.cql3.restrictions.TokenRestriction this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/cassandra/cql3/restrictions/TokenRestriction;

  public boolean needFiltering(org.apache.cassandra.config.CFMetaData);
    descriptor: (Lorg/apache/cassandra/config/CFMetaData;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // org.apache.cassandra.cql3.restrictions.TokenRestriction this
        start local 1 // org.apache.cassandra.config.CFMetaData cfm
         0: .line 85
            iconst_0
            ireturn
        end local 1 // org.apache.cassandra.config.CFMetaData cfm
        end local 0 // org.apache.cassandra.cql3.restrictions.TokenRestriction this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/cassandra/cql3/restrictions/TokenRestriction;
            0    1     1   cfm  Lorg/apache/cassandra/config/CFMetaData;
    MethodParameters:
      Name  Flags
      cfm   

  public boolean hasSlice();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.cassandra.cql3.restrictions.TokenRestriction this
         0: .line 91
            iconst_0
            ireturn
        end local 0 // org.apache.cassandra.cql3.restrictions.TokenRestriction this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/cassandra/cql3/restrictions/TokenRestriction;

  public boolean hasUnrestrictedPartitionKeyComponents(org.apache.cassandra.config.CFMetaData);
    descriptor: (Lorg/apache/cassandra/config/CFMetaData;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // org.apache.cassandra.cql3.restrictions.TokenRestriction this
        start local 1 // org.apache.cassandra.config.CFMetaData cfm
         0: .line 97
            iconst_0
            ireturn
        end local 1 // org.apache.cassandra.config.CFMetaData cfm
        end local 0 // org.apache.cassandra.cql3.restrictions.TokenRestriction this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/cassandra/cql3/restrictions/TokenRestriction;
            0    1     1   cfm  Lorg/apache/cassandra/config/CFMetaData;
    MethodParameters:
      Name  Flags
      cfm   

  public java.util.List<org.apache.cassandra.config.ColumnDefinition> getColumnDefs();
    descriptor: ()Ljava/util/List;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.cassandra.cql3.restrictions.TokenRestriction this
         0: .line 103
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.restrictions.TokenRestriction.columnDefs:Ljava/util/List;
            areturn
        end local 0 // org.apache.cassandra.cql3.restrictions.TokenRestriction this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/cassandra/cql3/restrictions/TokenRestriction;
    Signature: ()Ljava/util/List<Lorg/apache/cassandra/config/ColumnDefinition;>;

  public org.apache.cassandra.config.ColumnDefinition getFirstColumn();
    descriptor: ()Lorg/apache/cassandra/config/ColumnDefinition;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.apache.cassandra.cql3.restrictions.TokenRestriction this
         0: .line 109
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.restrictions.TokenRestriction.columnDefs:Ljava/util/List;
            iconst_0
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast org.apache.cassandra.config.ColumnDefinition
            areturn
        end local 0 // org.apache.cassandra.cql3.restrictions.TokenRestriction this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/cassandra/cql3/restrictions/TokenRestriction;

  public org.apache.cassandra.config.ColumnDefinition getLastColumn();
    descriptor: ()Lorg/apache/cassandra/config/ColumnDefinition;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.apache.cassandra.cql3.restrictions.TokenRestriction this
         0: .line 115
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.restrictions.TokenRestriction.columnDefs:Ljava/util/List;
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.restrictions.TokenRestriction.columnDefs:Ljava/util/List;
            invokeinterface java.util.List.size:()I
            iconst_1
            isub
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast org.apache.cassandra.config.ColumnDefinition
            areturn
        end local 0 // org.apache.cassandra.cql3.restrictions.TokenRestriction this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/cassandra/cql3/restrictions/TokenRestriction;

  public boolean hasSupportingIndex(org.apache.cassandra.index.SecondaryIndexManager);
    descriptor: (Lorg/apache/cassandra/index/SecondaryIndexManager;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // org.apache.cassandra.cql3.restrictions.TokenRestriction this
        start local 1 // org.apache.cassandra.index.SecondaryIndexManager secondaryIndexManager
         0: .line 121
            iconst_0
            ireturn
        end local 1 // org.apache.cassandra.index.SecondaryIndexManager secondaryIndexManager
        end local 0 // org.apache.cassandra.cql3.restrictions.TokenRestriction this
      LocalVariableTable:
        Start  End  Slot                   Name  Signature
            0    1     0                   this  Lorg/apache/cassandra/cql3/restrictions/TokenRestriction;
            0    1     1  secondaryIndexManager  Lorg/apache/cassandra/index/SecondaryIndexManager;
    MethodParameters:
                       Name  Flags
      secondaryIndexManager  

  public void addRowFilterTo(org.apache.cassandra.db.filter.RowFilter, org.apache.cassandra.index.SecondaryIndexManager, org.apache.cassandra.cql3.QueryOptions);
    descriptor: (Lorg/apache/cassandra/db/filter/RowFilter;Lorg/apache/cassandra/index/SecondaryIndexManager;Lorg/apache/cassandra/cql3/QueryOptions;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=4
        start local 0 // org.apache.cassandra.cql3.restrictions.TokenRestriction this
        start local 1 // org.apache.cassandra.db.filter.RowFilter filter
        start local 2 // org.apache.cassandra.index.SecondaryIndexManager indexManager
        start local 3 // org.apache.cassandra.cql3.QueryOptions options
         0: .line 127
            new java.lang.UnsupportedOperationException
            dup
            ldc "Index expression cannot be created for token restriction"
            invokespecial java.lang.UnsupportedOperationException.<init>:(Ljava/lang/String;)V
            athrow
        end local 3 // org.apache.cassandra.cql3.QueryOptions options
        end local 2 // org.apache.cassandra.index.SecondaryIndexManager indexManager
        end local 1 // org.apache.cassandra.db.filter.RowFilter filter
        end local 0 // org.apache.cassandra.cql3.restrictions.TokenRestriction this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    1     0          this  Lorg/apache/cassandra/cql3/restrictions/TokenRestriction;
            0    1     1        filter  Lorg/apache/cassandra/db/filter/RowFilter;
            0    1     2  indexManager  Lorg/apache/cassandra/index/SecondaryIndexManager;
            0    1     3       options  Lorg/apache/cassandra/cql3/QueryOptions;
    MethodParameters:
              Name  Flags
      filter        
      indexManager  
      options       

  public final boolean isEmpty();
    descriptor: ()Z
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.cassandra.cql3.restrictions.TokenRestriction this
         0: .line 133
            aload 0 /* this */
            invokevirtual org.apache.cassandra.cql3.restrictions.TokenRestriction.getColumnDefs:()Ljava/util/List;
            invokeinterface java.util.List.isEmpty:()Z
            ireturn
        end local 0 // org.apache.cassandra.cql3.restrictions.TokenRestriction this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/cassandra/cql3/restrictions/TokenRestriction;

  public final int size();
    descriptor: ()I
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.cassandra.cql3.restrictions.TokenRestriction this
         0: .line 139
            aload 0 /* this */
            invokevirtual org.apache.cassandra.cql3.restrictions.TokenRestriction.getColumnDefs:()Ljava/util/List;
            invokeinterface java.util.List.size:()I
            ireturn
        end local 0 // org.apache.cassandra.cql3.restrictions.TokenRestriction this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/cassandra/cql3/restrictions/TokenRestriction;

  protected final java.lang.String getColumnNamesAsString();
    descriptor: ()Ljava/lang/String;
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.apache.cassandra.cql3.restrictions.TokenRestriction this
         0: .line 149
            ldc ", "
            invokestatic com.google.common.base.Joiner.on:(Ljava/lang/String;)Lcom/google/common/base/Joiner;
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.restrictions.TokenRestriction.columnDefs:Ljava/util/List;
            invokestatic org.apache.cassandra.config.ColumnDefinition.toIdentifiers:(Ljava/util/Collection;)Ljava/util/Collection;
            invokevirtual com.google.common.base.Joiner.join:(Ljava/lang/Iterable;)Ljava/lang/String;
            areturn
        end local 0 // org.apache.cassandra.cql3.restrictions.TokenRestriction this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/cassandra/cql3/restrictions/TokenRestriction;

  public final org.apache.cassandra.cql3.restrictions.PartitionKeyRestrictions mergeWith(org.apache.cassandra.cql3.restrictions.Restriction);
    descriptor: (Lorg/apache/cassandra/cql3/restrictions/Restriction;)Lorg/apache/cassandra/cql3/restrictions/PartitionKeyRestrictions;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.apache.cassandra.cql3.restrictions.TokenRestriction this
        start local 1 // org.apache.cassandra.cql3.restrictions.Restriction otherRestriction
         0: .line 155
            aload 1 /* otherRestriction */
            invokeinterface org.apache.cassandra.cql3.restrictions.Restriction.isOnToken:()Z
            ifne 2
         1: .line 156
            new org.apache.cassandra.cql3.restrictions.TokenFilter
            dup
            aload 0 /* this */
            aload 1 /* otherRestriction */
            invokevirtual org.apache.cassandra.cql3.restrictions.TokenRestriction.toPartitionKeyRestrictions:(Lorg/apache/cassandra/cql3/restrictions/Restriction;)Lorg/apache/cassandra/cql3/restrictions/PartitionKeyRestrictions;
            aload 0 /* this */
            invokespecial org.apache.cassandra.cql3.restrictions.TokenFilter.<init>:(Lorg/apache/cassandra/cql3/restrictions/PartitionKeyRestrictions;Lorg/apache/cassandra/cql3/restrictions/TokenRestriction;)V
            areturn
         2: .line 158
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* otherRestriction */
            checkcast org.apache.cassandra.cql3.restrictions.TokenRestriction
            invokevirtual org.apache.cassandra.cql3.restrictions.TokenRestriction.doMergeWith:(Lorg/apache/cassandra/cql3/restrictions/TokenRestriction;)Lorg/apache/cassandra/cql3/restrictions/PartitionKeyRestrictions;
            areturn
        end local 1 // org.apache.cassandra.cql3.restrictions.Restriction otherRestriction
        end local 0 // org.apache.cassandra.cql3.restrictions.TokenRestriction this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    3     0              this  Lorg/apache/cassandra/cql3/restrictions/TokenRestriction;
            0    3     1  otherRestriction  Lorg/apache/cassandra/cql3/restrictions/Restriction;
    Exceptions:
      throws org.apache.cassandra.exceptions.InvalidRequestException
    MethodParameters:
                  Name  Flags
      otherRestriction  

  protected abstract org.apache.cassandra.cql3.restrictions.PartitionKeyRestrictions doMergeWith(org.apache.cassandra.cql3.restrictions.TokenRestriction);
    descriptor: (Lorg/apache/cassandra/cql3/restrictions/TokenRestriction;)Lorg/apache/cassandra/cql3/restrictions/PartitionKeyRestrictions;
    flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT
    Exceptions:
      throws org.apache.cassandra.exceptions.InvalidRequestException
    MethodParameters:
                  Name  Flags
      otherRestriction  

  private org.apache.cassandra.cql3.restrictions.PartitionKeyRestrictions toPartitionKeyRestrictions(org.apache.cassandra.cql3.restrictions.Restriction);
    descriptor: (Lorg/apache/cassandra/cql3/restrictions/Restriction;)Lorg/apache/cassandra/cql3/restrictions/PartitionKeyRestrictions;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.apache.cassandra.cql3.restrictions.TokenRestriction this
        start local 1 // org.apache.cassandra.cql3.restrictions.Restriction restriction
         0: .line 176
            aload 1 /* restriction */
            instanceof org.apache.cassandra.cql3.restrictions.PartitionKeyRestrictions
            ifeq 2
         1: .line 177
            aload 1 /* restriction */
            checkcast org.apache.cassandra.cql3.restrictions.PartitionKeyRestrictions
            areturn
         2: .line 179
      StackMap locals:
      StackMap stack:
            new org.apache.cassandra.cql3.restrictions.PartitionKeySingleRestrictionSet
            dup
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.restrictions.TokenRestriction.metadata:Lorg/apache/cassandra/config/CFMetaData;
            invokevirtual org.apache.cassandra.config.CFMetaData.getKeyValidatorAsClusteringComparator:()Lorg/apache/cassandra/db/ClusteringComparator;
            invokespecial org.apache.cassandra.cql3.restrictions.PartitionKeySingleRestrictionSet.<init>:(Lorg/apache/cassandra/db/ClusteringComparator;)V
            aload 1 /* restriction */
            invokevirtual org.apache.cassandra.cql3.restrictions.PartitionKeySingleRestrictionSet.mergeWith:(Lorg/apache/cassandra/cql3/restrictions/Restriction;)Lorg/apache/cassandra/cql3/restrictions/PartitionKeyRestrictions;
            areturn
        end local 1 // org.apache.cassandra.cql3.restrictions.Restriction restriction
        end local 0 // org.apache.cassandra.cql3.restrictions.TokenRestriction this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    3     0         this  Lorg/apache/cassandra/cql3/restrictions/TokenRestriction;
            0    3     1  restriction  Lorg/apache/cassandra/cql3/restrictions/Restriction;
    Exceptions:
      throws org.apache.cassandra.exceptions.InvalidRequestException
    MethodParameters:
             Name  Flags
      restriction  
}
SourceFile: "TokenRestriction.java"
NestMembers:
  org.apache.cassandra.cql3.restrictions.TokenRestriction$EQRestriction  org.apache.cassandra.cql3.restrictions.TokenRestriction$SliceRestriction
InnerClasses:
  public final EQRestriction = org.apache.cassandra.cql3.restrictions.TokenRestriction$EQRestriction of org.apache.cassandra.cql3.restrictions.TokenRestriction
  public SliceRestriction = org.apache.cassandra.cql3.restrictions.TokenRestriction$SliceRestriction of org.apache.cassandra.cql3.restrictions.TokenRestriction