public class org.apache.lucene.search.SortField
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.apache.lucene.search.SortField
  super_class: java.lang.Object
{
  public static final org.apache.lucene.search.SortField FIELD_SCORE;
    descriptor: Lorg/apache/lucene/search/SortField;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  public static final org.apache.lucene.search.SortField FIELD_DOC;
    descriptor: Lorg/apache/lucene/search/SortField;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  private java.lang.String field;
    descriptor: Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE

  private org.apache.lucene.search.SortField$Type type;
    descriptor: Lorg/apache/lucene/search/SortField$Type;
    flags: (0x0002) ACC_PRIVATE

  boolean reverse;
    descriptor: Z
    flags: (0x0000) 

  private org.apache.lucene.search.FieldComparatorSource comparatorSource;
    descriptor: Lorg/apache/lucene/search/FieldComparatorSource;
    flags: (0x0002) ACC_PRIVATE

  protected java.lang.Object missingValue;
    descriptor: Ljava/lang/Object;
    flags: (0x0004) ACC_PROTECTED

  public static final java.lang.Object STRING_FIRST;
    descriptor: Ljava/lang/Object;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  public static final java.lang.Object STRING_LAST;
    descriptor: Ljava/lang/Object;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  private java.util.Comparator<org.apache.lucene.util.BytesRef> bytesComparator;
    descriptor: Ljava/util/Comparator;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/Comparator<Lorg/apache/lucene/util/BytesRef;>;

  private static volatile int[] $SWITCH_TABLE$org$apache$lucene$search$SortField$Type;
    descriptor: [I
    flags: (0x104a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE, ACC_SYNTHETIC

  static final boolean $assertionsDisabled;
    descriptor: Z
    flags: (0x1018) ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=4, locals=0, args_size=0
         0: .line 35
            ldc Lorg/apache/lucene/search/SortField;
            invokevirtual java.lang.Class.desiredAssertionStatus:()Z
            ifne 1
            iconst_1
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_0
      StackMap locals:
      StackMap stack: int
         2: putstatic org.apache.lucene.search.SortField.$assertionsDisabled:Z
         3: .line 86
            new org.apache.lucene.search.SortField
            dup
            aconst_null
            getstatic org.apache.lucene.search.SortField$Type.SCORE:Lorg/apache/lucene/search/SortField$Type;
            invokespecial org.apache.lucene.search.SortField.<init>:(Ljava/lang/String;Lorg/apache/lucene/search/SortField$Type;)V
            putstatic org.apache.lucene.search.SortField.FIELD_SCORE:Lorg/apache/lucene/search/SortField;
         4: .line 89
            new org.apache.lucene.search.SortField
            dup
            aconst_null
            getstatic org.apache.lucene.search.SortField$Type.DOC:Lorg/apache/lucene/search/SortField$Type;
            invokespecial org.apache.lucene.search.SortField.<init>:(Ljava/lang/String;Lorg/apache/lucene/search/SortField$Type;)V
            putstatic org.apache.lucene.search.SortField.FIELD_DOC:Lorg/apache/lucene/search/SortField;
         5: .line 125
            new org.apache.lucene.search.SortField$1
            dup
            invokespecial org.apache.lucene.search.SortField$1.<init>:()V
            putstatic org.apache.lucene.search.SortField.STRING_FIRST:Ljava/lang/Object;
         6: .line 134
            new org.apache.lucene.search.SortField$2
            dup
            invokespecial org.apache.lucene.search.SortField$2.<init>:()V
            putstatic org.apache.lucene.search.SortField.STRING_LAST:Ljava/lang/Object;
         7: .line 139
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>(java.lang.String, org.apache.lucene.search.SortField$Type);
    descriptor: (Ljava/lang/String;Lorg/apache/lucene/search/SortField$Type;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.apache.lucene.search.SortField this
        start local 1 // java.lang.String field
        start local 2 // org.apache.lucene.search.SortField$Type type
         0: .line 107
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 93
            aload 0 /* this */
            iconst_0
            putfield org.apache.lucene.search.SortField.reverse:Z
         2: .line 99
            aload 0 /* this */
            aconst_null
            putfield org.apache.lucene.search.SortField.missingValue:Ljava/lang/Object;
         3: .line 316
            aload 0 /* this */
            invokestatic java.util.Comparator.naturalOrder:()Ljava/util/Comparator;
            putfield org.apache.lucene.search.SortField.bytesComparator:Ljava/util/Comparator;
         4: .line 108
            aload 0 /* this */
            aload 1 /* field */
            aload 2 /* type */
            invokevirtual org.apache.lucene.search.SortField.initFieldType:(Ljava/lang/String;Lorg/apache/lucene/search/SortField$Type;)V
         5: .line 109
            return
        end local 2 // org.apache.lucene.search.SortField$Type type
        end local 1 // java.lang.String field
        end local 0 // org.apache.lucene.search.SortField this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    6     0   this  Lorg/apache/lucene/search/SortField;
            0    6     1  field  Ljava/lang/String;
            0    6     2   type  Lorg/apache/lucene/search/SortField$Type;
    MethodParameters:
       Name  Flags
      field  
      type   

  public void <init>(java.lang.String, org.apache.lucene.search.SortField$Type, boolean);
    descriptor: (Ljava/lang/String;Lorg/apache/lucene/search/SortField$Type;Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=4
        start local 0 // org.apache.lucene.search.SortField this
        start local 1 // java.lang.String field
        start local 2 // org.apache.lucene.search.SortField$Type type
        start local 3 // boolean reverse
         0: .line 118
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 93
            aload 0 /* this */
            iconst_0
            putfield org.apache.lucene.search.SortField.reverse:Z
         2: .line 99
            aload 0 /* this */
            aconst_null
            putfield org.apache.lucene.search.SortField.missingValue:Ljava/lang/Object;
         3: .line 316
            aload 0 /* this */
            invokestatic java.util.Comparator.naturalOrder:()Ljava/util/Comparator;
            putfield org.apache.lucene.search.SortField.bytesComparator:Ljava/util/Comparator;
         4: .line 119
            aload 0 /* this */
            aload 1 /* field */
            aload 2 /* type */
            invokevirtual org.apache.lucene.search.SortField.initFieldType:(Ljava/lang/String;Lorg/apache/lucene/search/SortField$Type;)V
         5: .line 120
            aload 0 /* this */
            iload 3 /* reverse */
            putfield org.apache.lucene.search.SortField.reverse:Z
         6: .line 121
            return
        end local 3 // boolean reverse
        end local 2 // org.apache.lucene.search.SortField$Type type
        end local 1 // java.lang.String field
        end local 0 // org.apache.lucene.search.SortField this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    7     0     this  Lorg/apache/lucene/search/SortField;
            0    7     1    field  Ljava/lang/String;
            0    7     2     type  Lorg/apache/lucene/search/SortField$Type;
            0    7     3  reverse  Z
    MethodParameters:
         Name  Flags
      field    
      type     
      reverse  

  public java.lang.Object getMissingValue();
    descriptor: ()Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.lucene.search.SortField this
         0: .line 144
            aload 0 /* this */
            getfield org.apache.lucene.search.SortField.missingValue:Ljava/lang/Object;
            areturn
        end local 0 // org.apache.lucene.search.SortField this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/lucene/search/SortField;

  public void setMissingValue(java.lang.Object);
    descriptor: (Ljava/lang/Object;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // org.apache.lucene.search.SortField this
        start local 1 // java.lang.Object missingValue
         0: .line 149
            aload 0 /* this */
            getfield org.apache.lucene.search.SortField.type:Lorg/apache/lucene/search/SortField$Type;
            getstatic org.apache.lucene.search.SortField$Type.STRING:Lorg/apache/lucene/search/SortField$Type;
            if_acmpeq 1
            aload 0 /* this */
            getfield org.apache.lucene.search.SortField.type:Lorg/apache/lucene/search/SortField$Type;
            getstatic org.apache.lucene.search.SortField$Type.STRING_VAL:Lorg/apache/lucene/search/SortField$Type;
            if_acmpne 3
         1: .line 150
      StackMap locals:
      StackMap stack:
            aload 1 /* missingValue */
            getstatic org.apache.lucene.search.SortField.STRING_FIRST:Ljava/lang/Object;
            if_acmpeq 16
            aload 1 /* missingValue */
            getstatic org.apache.lucene.search.SortField.STRING_LAST:Ljava/lang/Object;
            if_acmpeq 16
         2: .line 151
            new java.lang.IllegalArgumentException
            dup
            ldc "For STRING type, missing value must be either STRING_FIRST or STRING_LAST"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         3: .line 153
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.lucene.search.SortField.type:Lorg/apache/lucene/search/SortField$Type;
            getstatic org.apache.lucene.search.SortField$Type.INT:Lorg/apache/lucene/search/SortField$Type;
            if_acmpne 6
         4: .line 154
            aload 1 /* missingValue */
            ifnull 16
            aload 1 /* missingValue */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            ldc Ljava/lang/Integer;
            if_acmpeq 16
         5: .line 155
            new java.lang.IllegalArgumentException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Missing values for Type.INT can only be of type java.lang.Integer, but got "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* missingValue */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         6: .line 156
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.lucene.search.SortField.type:Lorg/apache/lucene/search/SortField$Type;
            getstatic org.apache.lucene.search.SortField$Type.LONG:Lorg/apache/lucene/search/SortField$Type;
            if_acmpne 9
         7: .line 157
            aload 1 /* missingValue */
            ifnull 16
            aload 1 /* missingValue */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            ldc Ljava/lang/Long;
            if_acmpeq 16
         8: .line 158
            new java.lang.IllegalArgumentException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Missing values for Type.LONG can only be of type java.lang.Long, but got "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* missingValue */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         9: .line 159
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.lucene.search.SortField.type:Lorg/apache/lucene/search/SortField$Type;
            getstatic org.apache.lucene.search.SortField$Type.FLOAT:Lorg/apache/lucene/search/SortField$Type;
            if_acmpne 12
        10: .line 160
            aload 1 /* missingValue */
            ifnull 16
            aload 1 /* missingValue */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            ldc Ljava/lang/Float;
            if_acmpeq 16
        11: .line 161
            new java.lang.IllegalArgumentException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Missing values for Type.FLOAT can only be of type java.lang.Float, but got "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* missingValue */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        12: .line 162
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.lucene.search.SortField.type:Lorg/apache/lucene/search/SortField$Type;
            getstatic org.apache.lucene.search.SortField$Type.DOUBLE:Lorg/apache/lucene/search/SortField$Type;
            if_acmpne 15
        13: .line 163
            aload 1 /* missingValue */
            ifnull 16
            aload 1 /* missingValue */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            ldc Ljava/lang/Double;
            if_acmpeq 16
        14: .line 164
            new java.lang.IllegalArgumentException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Missing values for Type.DOUBLE can only be of type java.lang.Double, but got "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* missingValue */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        15: .line 166
      StackMap locals:
      StackMap stack:
            new java.lang.IllegalArgumentException
            dup
            ldc "Missing value only works for numeric or STRING types"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        16: .line 168
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* missingValue */
            putfield org.apache.lucene.search.SortField.missingValue:Ljava/lang/Object;
        17: .line 169
            return
        end local 1 // java.lang.Object missingValue
        end local 0 // org.apache.lucene.search.SortField this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   18     0          this  Lorg/apache/lucene/search/SortField;
            0   18     1  missingValue  Ljava/lang/Object;
    MethodParameters:
              Name  Flags
      missingValue  

  public void <init>(java.lang.String, org.apache.lucene.search.FieldComparatorSource);
    descriptor: (Ljava/lang/String;Lorg/apache/lucene/search/FieldComparatorSource;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.apache.lucene.search.SortField this
        start local 1 // java.lang.String field
        start local 2 // org.apache.lucene.search.FieldComparatorSource comparator
         0: .line 175
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 93
            aload 0 /* this */
            iconst_0
            putfield org.apache.lucene.search.SortField.reverse:Z
         2: .line 99
            aload 0 /* this */
            aconst_null
            putfield org.apache.lucene.search.SortField.missingValue:Ljava/lang/Object;
         3: .line 316
            aload 0 /* this */
            invokestatic java.util.Comparator.naturalOrder:()Ljava/util/Comparator;
            putfield org.apache.lucene.search.SortField.bytesComparator:Ljava/util/Comparator;
         4: .line 176
            aload 0 /* this */
            aload 1 /* field */
            getstatic org.apache.lucene.search.SortField$Type.CUSTOM:Lorg/apache/lucene/search/SortField$Type;
            invokevirtual org.apache.lucene.search.SortField.initFieldType:(Ljava/lang/String;Lorg/apache/lucene/search/SortField$Type;)V
         5: .line 177
            aload 0 /* this */
            aload 2 /* comparator */
            putfield org.apache.lucene.search.SortField.comparatorSource:Lorg/apache/lucene/search/FieldComparatorSource;
         6: .line 178
            return
        end local 2 // org.apache.lucene.search.FieldComparatorSource comparator
        end local 1 // java.lang.String field
        end local 0 // org.apache.lucene.search.SortField this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    7     0        this  Lorg/apache/lucene/search/SortField;
            0    7     1       field  Ljava/lang/String;
            0    7     2  comparator  Lorg/apache/lucene/search/FieldComparatorSource;
    MethodParameters:
            Name  Flags
      field       
      comparator  

  public void <init>(java.lang.String, org.apache.lucene.search.FieldComparatorSource, boolean);
    descriptor: (Ljava/lang/String;Lorg/apache/lucene/search/FieldComparatorSource;Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=4
        start local 0 // org.apache.lucene.search.SortField this
        start local 1 // java.lang.String field
        start local 2 // org.apache.lucene.search.FieldComparatorSource comparator
        start local 3 // boolean reverse
         0: .line 185
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 93
            aload 0 /* this */
            iconst_0
            putfield org.apache.lucene.search.SortField.reverse:Z
         2: .line 99
            aload 0 /* this */
            aconst_null
            putfield org.apache.lucene.search.SortField.missingValue:Ljava/lang/Object;
         3: .line 316
            aload 0 /* this */
            invokestatic java.util.Comparator.naturalOrder:()Ljava/util/Comparator;
            putfield org.apache.lucene.search.SortField.bytesComparator:Ljava/util/Comparator;
         4: .line 186
            aload 0 /* this */
            aload 1 /* field */
            getstatic org.apache.lucene.search.SortField$Type.CUSTOM:Lorg/apache/lucene/search/SortField$Type;
            invokevirtual org.apache.lucene.search.SortField.initFieldType:(Ljava/lang/String;Lorg/apache/lucene/search/SortField$Type;)V
         5: .line 187
            aload 0 /* this */
            iload 3 /* reverse */
            putfield org.apache.lucene.search.SortField.reverse:Z
         6: .line 188
            aload 0 /* this */
            aload 2 /* comparator */
            putfield org.apache.lucene.search.SortField.comparatorSource:Lorg/apache/lucene/search/FieldComparatorSource;
         7: .line 189
            return
        end local 3 // boolean reverse
        end local 2 // org.apache.lucene.search.FieldComparatorSource comparator
        end local 1 // java.lang.String field
        end local 0 // org.apache.lucene.search.SortField this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    8     0        this  Lorg/apache/lucene/search/SortField;
            0    8     1       field  Ljava/lang/String;
            0    8     2  comparator  Lorg/apache/lucene/search/FieldComparatorSource;
            0    8     3     reverse  Z
    MethodParameters:
            Name  Flags
      field       
      comparator  
      reverse     

  private void initFieldType(java.lang.String, org.apache.lucene.search.SortField$Type);
    descriptor: (Ljava/lang/String;Lorg/apache/lucene/search/SortField$Type;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.apache.lucene.search.SortField this
        start local 1 // java.lang.String field
        start local 2 // org.apache.lucene.search.SortField$Type type
         0: .line 194
            aload 0 /* this */
            aload 2 /* type */
            putfield org.apache.lucene.search.SortField.type:Lorg/apache/lucene/search/SortField$Type;
         1: .line 195
            aload 1 /* field */
            ifnonnull 4
         2: .line 196
            aload 2 /* type */
            getstatic org.apache.lucene.search.SortField$Type.SCORE:Lorg/apache/lucene/search/SortField$Type;
            if_acmpeq 5
            aload 2 /* type */
            getstatic org.apache.lucene.search.SortField$Type.DOC:Lorg/apache/lucene/search/SortField$Type;
            if_acmpeq 5
         3: .line 197
            new java.lang.IllegalArgumentException
            dup
            ldc "field can only be null when type is SCORE or DOC"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         4: .line 200
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* field */
            putfield org.apache.lucene.search.SortField.field:Ljava/lang/String;
         5: .line 202
      StackMap locals:
      StackMap stack:
            return
        end local 2 // org.apache.lucene.search.SortField$Type type
        end local 1 // java.lang.String field
        end local 0 // org.apache.lucene.search.SortField this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    6     0   this  Lorg/apache/lucene/search/SortField;
            0    6     1  field  Ljava/lang/String;
            0    6     2   type  Lorg/apache/lucene/search/SortField$Type;
    MethodParameters:
       Name  Flags
      field  
      type   

  public java.lang.String getField();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.lucene.search.SortField this
         0: .line 209
            aload 0 /* this */
            getfield org.apache.lucene.search.SortField.field:Ljava/lang/String;
            areturn
        end local 0 // org.apache.lucene.search.SortField this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/lucene/search/SortField;

  public org.apache.lucene.search.SortField$Type getType();
    descriptor: ()Lorg/apache/lucene/search/SortField$Type;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.lucene.search.SortField this
         0: .line 216
            aload 0 /* this */
            getfield org.apache.lucene.search.SortField.type:Lorg/apache/lucene/search/SortField$Type;
            areturn
        end local 0 // org.apache.lucene.search.SortField this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/lucene/search/SortField;

  public boolean getReverse();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.lucene.search.SortField this
         0: .line 223
            aload 0 /* this */
            getfield org.apache.lucene.search.SortField.reverse:Z
            ireturn
        end local 0 // org.apache.lucene.search.SortField this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/lucene/search/SortField;

  public org.apache.lucene.search.FieldComparatorSource getComparatorSource();
    descriptor: ()Lorg/apache/lucene/search/FieldComparatorSource;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.lucene.search.SortField this
         0: .line 230
            aload 0 /* this */
            getfield org.apache.lucene.search.SortField.comparatorSource:Lorg/apache/lucene/search/FieldComparatorSource;
            areturn
        end local 0 // org.apache.lucene.search.SortField this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/lucene/search/SortField;

  public java.lang.String toString();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // org.apache.lucene.search.SortField this
         0: .line 235
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            astore 1 /* buffer */
        start local 1 // java.lang.StringBuilder buffer
         1: .line 236
            invokestatic org.apache.lucene.search.SortField.$SWITCH_TABLE$org$apache$lucene$search$SortField$Type:()[I
            aload 0 /* this */
            getfield org.apache.lucene.search.SortField.type:Lorg/apache/lucene/search/SortField$Type;
            invokevirtual org.apache.lucene.search.SortField$Type.ordinal:()I
            iaload
            tableswitch { // 1 - 10
                    1: 2
                    2: 4
                    3: 6
                    4: 10
                    5: 14
                    6: 12
                    7: 16
                    8: 18
                    9: 8
                   10: 20
              default: 22
          }
         2: .line 238
      StackMap locals: java.lang.StringBuilder
      StackMap stack:
            aload 1 /* buffer */
            ldc "<score>"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         3: .line 239
            goto 23
         4: .line 242
      StackMap locals:
      StackMap stack:
            aload 1 /* buffer */
            ldc "<doc>"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         5: .line 243
            goto 23
         6: .line 246
      StackMap locals:
      StackMap stack:
            aload 1 /* buffer */
            ldc "<string: \""
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield org.apache.lucene.search.SortField.field:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "\">"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         7: .line 247
            goto 23
         8: .line 250
      StackMap locals:
      StackMap stack:
            aload 1 /* buffer */
            ldc "<string_val: \""
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield org.apache.lucene.search.SortField.field:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "\">"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         9: .line 251
            goto 23
        10: .line 254
      StackMap locals:
      StackMap stack:
            aload 1 /* buffer */
            ldc "<int: \""
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield org.apache.lucene.search.SortField.field:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "\">"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        11: .line 255
            goto 23
        12: .line 258
      StackMap locals:
      StackMap stack:
            aload 1 /* buffer */
            ldc "<long: \""
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield org.apache.lucene.search.SortField.field:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "\">"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        13: .line 259
            goto 23
        14: .line 262
      StackMap locals:
      StackMap stack:
            aload 1 /* buffer */
            ldc "<float: \""
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield org.apache.lucene.search.SortField.field:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "\">"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        15: .line 263
            goto 23
        16: .line 266
      StackMap locals:
      StackMap stack:
            aload 1 /* buffer */
            ldc "<double: \""
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield org.apache.lucene.search.SortField.field:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "\">"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        17: .line 267
            goto 23
        18: .line 270
      StackMap locals:
      StackMap stack:
            aload 1 /* buffer */
            ldc "<custom:\""
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield org.apache.lucene.search.SortField.field:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "\": "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield org.apache.lucene.search.SortField.comparatorSource:Lorg/apache/lucene/search/FieldComparatorSource;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            bipush 62
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        19: .line 271
            goto 23
        20: .line 274
      StackMap locals:
      StackMap stack:
            aload 1 /* buffer */
            ldc "<rewriteable: \""
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield org.apache.lucene.search.SortField.field:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "\">"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        21: .line 275
            goto 23
        22: .line 278
      StackMap locals:
      StackMap stack:
            aload 1 /* buffer */
            ldc "<???: \""
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield org.apache.lucene.search.SortField.field:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "\">"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        23: .line 282
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.lucene.search.SortField.reverse:Z
            ifeq 24
            aload 1 /* buffer */
            bipush 33
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        24: .line 283
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.lucene.search.SortField.missingValue:Ljava/lang/Object;
            ifnull 27
        25: .line 284
            aload 1 /* buffer */
            ldc " missingValue="
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        26: .line 285
            aload 1 /* buffer */
            aload 0 /* this */
            getfield org.apache.lucene.search.SortField.missingValue:Ljava/lang/Object;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            pop
        27: .line 288
      StackMap locals:
      StackMap stack:
            aload 1 /* buffer */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 1 // java.lang.StringBuilder buffer
        end local 0 // org.apache.lucene.search.SortField this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   28     0    this  Lorg/apache/lucene/search/SortField;
            1   28     1  buffer  Ljava/lang/StringBuilder;

  public boolean equals(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // org.apache.lucene.search.SortField this
        start local 1 // java.lang.Object o
         0: .line 296
            aload 0 /* this */
            aload 1 /* o */
            if_acmpne 1
            iconst_1
            ireturn
         1: .line 297
      StackMap locals:
      StackMap stack:
            aload 1 /* o */
            instanceof org.apache.lucene.search.SortField
            ifne 2
            iconst_0
            ireturn
         2: .line 298
      StackMap locals:
      StackMap stack:
            aload 1 /* o */
            checkcast org.apache.lucene.search.SortField
            astore 2 /* other */
        start local 2 // org.apache.lucene.search.SortField other
         3: .line 300
            aload 2 /* other */
            getfield org.apache.lucene.search.SortField.field:Ljava/lang/String;
            aload 0 /* this */
            getfield org.apache.lucene.search.SortField.field:Ljava/lang/String;
            invokestatic java.util.Objects.equals:(Ljava/lang/Object;Ljava/lang/Object;)Z
            ifeq 9
         4: .line 301
            aload 2 /* other */
            getfield org.apache.lucene.search.SortField.type:Lorg/apache/lucene/search/SortField$Type;
            aload 0 /* this */
            getfield org.apache.lucene.search.SortField.type:Lorg/apache/lucene/search/SortField$Type;
            if_acmpne 9
         5: .line 302
            aload 2 /* other */
            getfield org.apache.lucene.search.SortField.reverse:Z
            aload 0 /* this */
            getfield org.apache.lucene.search.SortField.reverse:Z
            if_icmpne 9
         6: .line 303
            aload 0 /* this */
            getfield org.apache.lucene.search.SortField.comparatorSource:Lorg/apache/lucene/search/FieldComparatorSource;
            aload 2 /* other */
            getfield org.apache.lucene.search.SortField.comparatorSource:Lorg/apache/lucene/search/FieldComparatorSource;
            invokestatic java.util.Objects.equals:(Ljava/lang/Object;Ljava/lang/Object;)Z
            ifeq 9
         7: .line 304
            aload 0 /* this */
            getfield org.apache.lucene.search.SortField.missingValue:Ljava/lang/Object;
            aload 2 /* other */
            getfield org.apache.lucene.search.SortField.missingValue:Ljava/lang/Object;
            invokestatic java.util.Objects.equals:(Ljava/lang/Object;Ljava/lang/Object;)Z
            ifeq 9
         8: .line 299
            iconst_1
            ireturn
      StackMap locals: org.apache.lucene.search.SortField
      StackMap stack:
         9: iconst_0
            ireturn
        end local 2 // org.apache.lucene.search.SortField other
        end local 1 // java.lang.Object o
        end local 0 // org.apache.lucene.search.SortField this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   10     0   this  Lorg/apache/lucene/search/SortField;
            0   10     1      o  Ljava/lang/Object;
            3   10     2  other  Lorg/apache/lucene/search/SortField;
    MethodParameters:
      Name  Flags
      o     

  public int hashCode();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // org.apache.lucene.search.SortField this
         0: .line 313
            iconst_5
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* this */
            getfield org.apache.lucene.search.SortField.field:Ljava/lang/String;
            aastore
            dup
            iconst_1
            aload 0 /* this */
            getfield org.apache.lucene.search.SortField.type:Lorg/apache/lucene/search/SortField$Type;
            aastore
            dup
            iconst_2
            aload 0 /* this */
            getfield org.apache.lucene.search.SortField.reverse:Z
            invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
            aastore
            dup
            iconst_3
            aload 0 /* this */
            getfield org.apache.lucene.search.SortField.comparatorSource:Lorg/apache/lucene/search/FieldComparatorSource;
            aastore
            dup
            iconst_4
            aload 0 /* this */
            getfield org.apache.lucene.search.SortField.missingValue:Ljava/lang/Object;
            aastore
            invokestatic java.util.Objects.hash:([Ljava/lang/Object;)I
            ireturn
        end local 0 // org.apache.lucene.search.SortField this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/lucene/search/SortField;

  public void setBytesComparator(java.util.Comparator<org.apache.lucene.util.BytesRef>);
    descriptor: (Ljava/util/Comparator;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.lucene.search.SortField this
        start local 1 // java.util.Comparator b
         0: .line 319
            aload 0 /* this */
            aload 1 /* b */
            putfield org.apache.lucene.search.SortField.bytesComparator:Ljava/util/Comparator;
         1: .line 320
            return
        end local 1 // java.util.Comparator b
        end local 0 // org.apache.lucene.search.SortField this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/apache/lucene/search/SortField;
            0    2     1     b  Ljava/util/Comparator<Lorg/apache/lucene/util/BytesRef;>;
    Signature: (Ljava/util/Comparator<Lorg/apache/lucene/util/BytesRef;>;)V
    MethodParameters:
      Name  Flags
      b     

  public java.util.Comparator<org.apache.lucene.util.BytesRef> getBytesComparator();
    descriptor: ()Ljava/util/Comparator;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.lucene.search.SortField this
         0: .line 323
            aload 0 /* this */
            getfield org.apache.lucene.search.SortField.bytesComparator:Ljava/util/Comparator;
            areturn
        end local 0 // org.apache.lucene.search.SortField this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/lucene/search/SortField;
    Signature: ()Ljava/util/Comparator<Lorg/apache/lucene/util/BytesRef;>;

  public org.apache.lucene.search.FieldComparator<?> getComparator(int, int);
    descriptor: (II)Lorg/apache/lucene/search/FieldComparator;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=3, args_size=3
        start local 0 // org.apache.lucene.search.SortField this
        start local 1 // int numHits
        start local 2 // int sortPos
         0: .line 340
            invokestatic org.apache.lucene.search.SortField.$SWITCH_TABLE$org$apache$lucene$search$SortField$Type:()[I
            aload 0 /* this */
            getfield org.apache.lucene.search.SortField.type:Lorg/apache/lucene/search/SortField$Type;
            invokevirtual org.apache.lucene.search.SortField$Type.ordinal:()I
            iaload
            tableswitch { // 1 - 10
                    1: 1
                    2: 2
                    3: 9
                    4: 3
                    5: 4
                    6: 5
                    7: 6
                    8: 7
                    9: 12
                   10: 15
              default: 16
          }
         1: .line 342
      StackMap locals:
      StackMap stack:
            new org.apache.lucene.search.FieldComparator$RelevanceComparator
            dup
            iload 1 /* numHits */
            invokespecial org.apache.lucene.search.FieldComparator$RelevanceComparator.<init>:(I)V
            areturn
         2: .line 345
      StackMap locals:
      StackMap stack:
            new org.apache.lucene.search.FieldComparator$DocComparator
            dup
            iload 1 /* numHits */
            invokespecial org.apache.lucene.search.FieldComparator$DocComparator.<init>:(I)V
            areturn
         3: .line 348
      StackMap locals:
      StackMap stack:
            new org.apache.lucene.search.FieldComparator$IntComparator
            dup
            iload 1 /* numHits */
            aload 0 /* this */
            getfield org.apache.lucene.search.SortField.field:Ljava/lang/String;
            aload 0 /* this */
            getfield org.apache.lucene.search.SortField.missingValue:Ljava/lang/Object;
            checkcast java.lang.Integer
            invokespecial org.apache.lucene.search.FieldComparator$IntComparator.<init>:(ILjava/lang/String;Ljava/lang/Integer;)V
            areturn
         4: .line 351
      StackMap locals:
      StackMap stack:
            new org.apache.lucene.search.FieldComparator$FloatComparator
            dup
            iload 1 /* numHits */
            aload 0 /* this */
            getfield org.apache.lucene.search.SortField.field:Ljava/lang/String;
            aload 0 /* this */
            getfield org.apache.lucene.search.SortField.missingValue:Ljava/lang/Object;
            checkcast java.lang.Float
            invokespecial org.apache.lucene.search.FieldComparator$FloatComparator.<init>:(ILjava/lang/String;Ljava/lang/Float;)V
            areturn
         5: .line 354
      StackMap locals:
      StackMap stack:
            new org.apache.lucene.search.FieldComparator$LongComparator
            dup
            iload 1 /* numHits */
            aload 0 /* this */
            getfield org.apache.lucene.search.SortField.field:Ljava/lang/String;
            aload 0 /* this */
            getfield org.apache.lucene.search.SortField.missingValue:Ljava/lang/Object;
            checkcast java.lang.Long
            invokespecial org.apache.lucene.search.FieldComparator$LongComparator.<init>:(ILjava/lang/String;Ljava/lang/Long;)V
            areturn
         6: .line 357
      StackMap locals:
      StackMap stack:
            new org.apache.lucene.search.FieldComparator$DoubleComparator
            dup
            iload 1 /* numHits */
            aload 0 /* this */
            getfield org.apache.lucene.search.SortField.field:Ljava/lang/String;
            aload 0 /* this */
            getfield org.apache.lucene.search.SortField.missingValue:Ljava/lang/Object;
            checkcast java.lang.Double
            invokespecial org.apache.lucene.search.FieldComparator$DoubleComparator.<init>:(ILjava/lang/String;Ljava/lang/Double;)V
            areturn
         7: .line 360
      StackMap locals:
      StackMap stack:
            getstatic org.apache.lucene.search.SortField.$assertionsDisabled:Z
            ifne 8
            aload 0 /* this */
            getfield org.apache.lucene.search.SortField.comparatorSource:Lorg/apache/lucene/search/FieldComparatorSource;
            ifnonnull 8
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         8: .line 361
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.lucene.search.SortField.comparatorSource:Lorg/apache/lucene/search/FieldComparatorSource;
            aload 0 /* this */
            getfield org.apache.lucene.search.SortField.field:Ljava/lang/String;
            iload 1 /* numHits */
            iload 2 /* sortPos */
            aload 0 /* this */
            getfield org.apache.lucene.search.SortField.reverse:Z
            invokevirtual org.apache.lucene.search.FieldComparatorSource.newComparator:(Ljava/lang/String;IIZ)Lorg/apache/lucene/search/FieldComparator;
            areturn
         9: .line 364
      StackMap locals:
      StackMap stack:
            new org.apache.lucene.search.FieldComparator$TermOrdValComparator
            dup
            iload 1 /* numHits */
            aload 0 /* this */
            getfield org.apache.lucene.search.SortField.field:Ljava/lang/String;
            aload 0 /* this */
            getfield org.apache.lucene.search.SortField.missingValue:Ljava/lang/Object;
            getstatic org.apache.lucene.search.SortField.STRING_LAST:Ljava/lang/Object;
            if_acmpne 10
            iconst_1
            goto 11
      StackMap locals: org.apache.lucene.search.SortField int int
      StackMap stack: new 9 new 9 int java.lang.String
        10: iconst_0
      StackMap locals: org.apache.lucene.search.SortField int int
      StackMap stack: new 9 new 9 int java.lang.String int
        11: invokespecial org.apache.lucene.search.FieldComparator$TermOrdValComparator.<init>:(ILjava/lang/String;Z)V
            areturn
        12: .line 367
      StackMap locals:
      StackMap stack:
            new org.apache.lucene.search.FieldComparator$TermValComparator
            dup
            iload 1 /* numHits */
            aload 0 /* this */
            getfield org.apache.lucene.search.SortField.field:Ljava/lang/String;
            aload 0 /* this */
            getfield org.apache.lucene.search.SortField.missingValue:Ljava/lang/Object;
            getstatic org.apache.lucene.search.SortField.STRING_LAST:Ljava/lang/Object;
            if_acmpne 13
            iconst_1
            goto 14
      StackMap locals: org.apache.lucene.search.SortField int int
      StackMap stack: new 12 new 12 int java.lang.String
        13: iconst_0
      StackMap locals: org.apache.lucene.search.SortField int int
      StackMap stack: new 12 new 12 int java.lang.String int
        14: invokespecial org.apache.lucene.search.FieldComparator$TermValComparator.<init>:(ILjava/lang/String;Z)V
            areturn
        15: .line 370
      StackMap locals:
      StackMap stack:
            new java.lang.IllegalStateException
            dup
            ldc "SortField needs to be rewritten through Sort.rewrite(..) and SortField.rewrite(..)"
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
            athrow
        16: .line 373
      StackMap locals:
      StackMap stack:
            new java.lang.IllegalStateException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Illegal sort type: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield org.apache.lucene.search.SortField.type:Lorg/apache/lucene/search/SortField$Type;
            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
        end local 2 // int sortPos
        end local 1 // int numHits
        end local 0 // org.apache.lucene.search.SortField this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   17     0     this  Lorg/apache/lucene/search/SortField;
            0   17     1  numHits  I
            0   17     2  sortPos  I
    Signature: (II)Lorg/apache/lucene/search/FieldComparator<*>;
    MethodParameters:
         Name  Flags
      numHits  final
      sortPos  final

  public org.apache.lucene.search.SortField rewrite(org.apache.lucene.search.IndexSearcher);
    descriptor: (Lorg/apache/lucene/search/IndexSearcher;)Lorg/apache/lucene/search/SortField;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // org.apache.lucene.search.SortField this
        start local 1 // org.apache.lucene.search.IndexSearcher searcher
         0: .line 388
            aload 0 /* this */
            areturn
        end local 1 // org.apache.lucene.search.IndexSearcher searcher
        end local 0 // org.apache.lucene.search.SortField this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0      this  Lorg/apache/lucene/search/SortField;
            0    1     1  searcher  Lorg/apache/lucene/search/IndexSearcher;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
          Name  Flags
      searcher  

  public boolean needsScores();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.apache.lucene.search.SortField this
         0: .line 393
            aload 0 /* this */
            getfield org.apache.lucene.search.SortField.type:Lorg/apache/lucene/search/SortField$Type;
            getstatic org.apache.lucene.search.SortField$Type.SCORE:Lorg/apache/lucene/search/SortField$Type;
            if_acmpne 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // org.apache.lucene.search.SortField this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/apache/lucene/search/SortField;

  static int[] $SWITCH_TABLE$org$apache$lucene$search$SortField$Type();
    descriptor: ()[I
    flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=1, args_size=0
         0: .line 35
            getstatic org.apache.lucene.search.SortField.$SWITCH_TABLE$org$apache$lucene$search$SortField$Type:[I
            dup
            ifnull 1
            areturn
      StackMap locals:
      StackMap stack: int[]
         1: pop
            invokestatic org.apache.lucene.search.SortField$Type.values:()[Lorg/apache/lucene/search/SortField$Type;
            arraylength
            newarray 10
            astore 0
         2: aload 0
            getstatic org.apache.lucene.search.SortField$Type.CUSTOM:Lorg/apache/lucene/search/SortField$Type;
            invokevirtual org.apache.lucene.search.SortField$Type.ordinal:()I
            bipush 8
            iastore
         3: goto 5
      StackMap locals: int[]
      StackMap stack: java.lang.NoSuchFieldError
         4: pop
      StackMap locals:
      StackMap stack:
         5: aload 0
            getstatic org.apache.lucene.search.SortField$Type.DOC:Lorg/apache/lucene/search/SortField$Type;
            invokevirtual org.apache.lucene.search.SortField$Type.ordinal:()I
            iconst_2
            iastore
         6: goto 8
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
         7: pop
      StackMap locals:
      StackMap stack:
         8: aload 0
            getstatic org.apache.lucene.search.SortField$Type.DOUBLE:Lorg/apache/lucene/search/SortField$Type;
            invokevirtual org.apache.lucene.search.SortField$Type.ordinal:()I
            bipush 7
            iastore
         9: goto 11
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        10: pop
      StackMap locals:
      StackMap stack:
        11: aload 0
            getstatic org.apache.lucene.search.SortField$Type.FLOAT:Lorg/apache/lucene/search/SortField$Type;
            invokevirtual org.apache.lucene.search.SortField$Type.ordinal:()I
            iconst_5
            iastore
        12: goto 14
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        13: pop
      StackMap locals:
      StackMap stack:
        14: aload 0
            getstatic org.apache.lucene.search.SortField$Type.INT:Lorg/apache/lucene/search/SortField$Type;
            invokevirtual org.apache.lucene.search.SortField$Type.ordinal:()I
            iconst_4
            iastore
        15: goto 17
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        16: pop
      StackMap locals:
      StackMap stack:
        17: aload 0
            getstatic org.apache.lucene.search.SortField$Type.LONG:Lorg/apache/lucene/search/SortField$Type;
            invokevirtual org.apache.lucene.search.SortField$Type.ordinal:()I
            bipush 6
            iastore
        18: goto 20
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        19: pop
      StackMap locals:
      StackMap stack:
        20: aload 0
            getstatic org.apache.lucene.search.SortField$Type.REWRITEABLE:Lorg/apache/lucene/search/SortField$Type;
            invokevirtual org.apache.lucene.search.SortField$Type.ordinal:()I
            bipush 10
            iastore
        21: goto 23
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        22: pop
      StackMap locals:
      StackMap stack:
        23: aload 0
            getstatic org.apache.lucene.search.SortField$Type.SCORE:Lorg/apache/lucene/search/SortField$Type;
            invokevirtual org.apache.lucene.search.SortField$Type.ordinal:()I
            iconst_1
            iastore
        24: goto 26
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        25: pop
      StackMap locals:
      StackMap stack:
        26: aload 0
            getstatic org.apache.lucene.search.SortField$Type.STRING:Lorg/apache/lucene/search/SortField$Type;
            invokevirtual org.apache.lucene.search.SortField$Type.ordinal:()I
            iconst_3
            iastore
        27: goto 29
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        28: pop
      StackMap locals:
      StackMap stack:
        29: aload 0
            getstatic org.apache.lucene.search.SortField$Type.STRING_VAL:Lorg/apache/lucene/search/SortField$Type;
            invokevirtual org.apache.lucene.search.SortField$Type.ordinal:()I
            bipush 9
            iastore
        30: goto 32
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        31: pop
      StackMap locals:
      StackMap stack:
        32: aload 0
            dup
            putstatic org.apache.lucene.search.SortField.$SWITCH_TABLE$org$apache$lucene$search$SortField$Type:[I
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
      Exception table:
        from    to  target  type
           2     3       4  Class java.lang.NoSuchFieldError
           5     6       7  Class java.lang.NoSuchFieldError
           8     9      10  Class java.lang.NoSuchFieldError
          11    12      13  Class java.lang.NoSuchFieldError
          14    15      16  Class java.lang.NoSuchFieldError
          17    18      19  Class java.lang.NoSuchFieldError
          20    21      22  Class java.lang.NoSuchFieldError
          23    24      25  Class java.lang.NoSuchFieldError
          26    27      28  Class java.lang.NoSuchFieldError
          29    30      31  Class java.lang.NoSuchFieldError
}
SourceFile: "SortField.java"
NestMembers:
  org.apache.lucene.search.SortField$1  org.apache.lucene.search.SortField$2  org.apache.lucene.search.SortField$Type
InnerClasses:
  public final DocComparator = org.apache.lucene.search.FieldComparator$DocComparator of org.apache.lucene.search.FieldComparator
  public DoubleComparator = org.apache.lucene.search.FieldComparator$DoubleComparator of org.apache.lucene.search.FieldComparator
  public FloatComparator = org.apache.lucene.search.FieldComparator$FloatComparator of org.apache.lucene.search.FieldComparator
  public IntComparator = org.apache.lucene.search.FieldComparator$IntComparator of org.apache.lucene.search.FieldComparator
  public LongComparator = org.apache.lucene.search.FieldComparator$LongComparator of org.apache.lucene.search.FieldComparator
  public final RelevanceComparator = org.apache.lucene.search.FieldComparator$RelevanceComparator of org.apache.lucene.search.FieldComparator
  public TermOrdValComparator = org.apache.lucene.search.FieldComparator$TermOrdValComparator of org.apache.lucene.search.FieldComparator
  public TermValComparator = org.apache.lucene.search.FieldComparator$TermValComparator of org.apache.lucene.search.FieldComparator
  org.apache.lucene.search.SortField$1
  org.apache.lucene.search.SortField$2
  public final Type = org.apache.lucene.search.SortField$Type of org.apache.lucene.search.SortField