public interface org.apache.cassandra.dht.IPartitioner
  minor version: 0
  major version: 59
  flags: flags: (0x0601) ACC_PUBLIC, ACC_INTERFACE, ACC_ABSTRACT
  this_class: org.apache.cassandra.dht.IPartitioner
  super_class: java.lang.Object
{
  public abstract org.apache.cassandra.db.DecoratedKey decorateKey(java.nio.ByteBuffer);
    descriptor: (Ljava/nio/ByteBuffer;)Lorg/apache/cassandra/db/DecoratedKey;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    MethodParameters:
      Name  Flags
      key   

  public abstract org.apache.cassandra.dht.Token midpoint(org.apache.cassandra.dht.Token, org.apache.cassandra.dht.Token);
    descriptor: (Lorg/apache/cassandra/dht/Token;Lorg/apache/cassandra/dht/Token;)Lorg/apache/cassandra/dht/Token;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    MethodParameters:
       Name  Flags
      left   
      right  

  public abstract org.apache.cassandra.dht.Token split(org.apache.cassandra.dht.Token, org.apache.cassandra.dht.Token, double);
    descriptor: (Lorg/apache/cassandra/dht/Token;Lorg/apache/cassandra/dht/Token;D)Lorg/apache/cassandra/dht/Token;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    MethodParameters:
             Name  Flags
      left         
      right        
      ratioToLeft  

  public abstract org.apache.cassandra.dht.Token getMinimumToken();
    descriptor: ()Lorg/apache/cassandra/dht/Token;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT

  public org.apache.cassandra.dht.Token getMaximumToken();
    descriptor: ()Lorg/apache/cassandra/dht/Token;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.apache.cassandra.dht.IPartitioner this
         0: .line 66
            new java.lang.UnsupportedOperationException
            dup
            ldc "If you are using a splitting partitioner, getMaximumToken has to be implemented"
            invokespecial java.lang.UnsupportedOperationException.<init>:(Ljava/lang/String;)V
            athrow
        end local 0 // org.apache.cassandra.dht.IPartitioner this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/cassandra/dht/IPartitioner;

  public abstract org.apache.cassandra.dht.Token getToken(java.nio.ByteBuffer);
    descriptor: (Ljava/nio/ByteBuffer;)Lorg/apache/cassandra/dht/Token;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    MethodParameters:
      Name  Flags
      key   

  public abstract org.apache.cassandra.dht.Token getRandomToken();
    descriptor: ()Lorg/apache/cassandra/dht/Token;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT

  public abstract org.apache.cassandra.dht.Token getRandomToken(java.util.Random);
    descriptor: (Ljava/util/Random;)Lorg/apache/cassandra/dht/Token;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    MethodParameters:
        Name  Flags
      random  

  public abstract org.apache.cassandra.dht.Token$TokenFactory getTokenFactory();
    descriptor: ()Lorg/apache/cassandra/dht/Token$TokenFactory;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT

  public abstract boolean preservesOrder();
    descriptor: ()Z
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT

  public abstract java.util.Map<org.apache.cassandra.dht.Token, java.lang.Float> describeOwnership(java.util.List<org.apache.cassandra.dht.Token>);
    descriptor: (Ljava/util/List;)Ljava/util/Map;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: (Ljava/util/List<Lorg/apache/cassandra/dht/Token;>;)Ljava/util/Map<Lorg/apache/cassandra/dht/Token;Ljava/lang/Float;>;
    MethodParameters:
              Name  Flags
      sortedTokens  

  public abstract org.apache.cassandra.db.marshal.AbstractType<?> getTokenValidator();
    descriptor: ()Lorg/apache/cassandra/db/marshal/AbstractType;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: ()Lorg/apache/cassandra/db/marshal/AbstractType<*>;

  public abstract org.apache.cassandra.db.marshal.AbstractType<?> partitionOrdering();
    descriptor: ()Lorg/apache/cassandra/db/marshal/AbstractType;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: ()Lorg/apache/cassandra/db/marshal/AbstractType<*>;

  public java.util.Optional<org.apache.cassandra.dht.Splitter> splitter();
    descriptor: ()Ljava/util/Optional;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.cassandra.dht.IPartitioner this
         0: .line 115
            invokestatic java.util.Optional.empty:()Ljava/util/Optional;
            areturn
        end local 0 // org.apache.cassandra.dht.IPartitioner this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/cassandra/dht/IPartitioner;
    Signature: ()Ljava/util/Optional<Lorg/apache/cassandra/dht/Splitter;>;
}
SourceFile: "IPartitioner.java"
InnerClasses:
  public abstract TokenFactory = org.apache.cassandra.dht.Token$TokenFactory of org.apache.cassandra.dht.Token