public abstract class org.apache.lucene.util.Sorter
minor version: 0
major version: 59
flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
this_class: org.apache.lucene.util.Sorter
super_class: java.lang.Object
{
static final int BINARY_SORT_THRESHOLD;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 20
private int pivotIndex;
descriptor: I
flags: (0x0002) ACC_PRIVATE
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=1, locals=0, args_size=0
0: .line 24
ldc Lorg/apache/lucene/util/Sorter;
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.util.Sorter.$assertionsDisabled:Z
3: .line 26
return
LocalVariableTable:
Start End Slot Name Signature
protected void <init>();
descriptor: ()V
flags: (0x0004) ACC_PROTECTED
Code:
stack=1, locals=1, args_size=1
start local 0 // org.apache.lucene.util.Sorter this
0: .line 29
aload 0 /* this */
invokespecial java.lang.Object.<init>:()V
return
end local 0 // org.apache.lucene.util.Sorter this
LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/apache/lucene/util/Sorter;
protected abstract int compare(int, int);
descriptor: (II)I
flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT
MethodParameters:
Name Flags
i
j
protected abstract void swap(int, int);
descriptor: (II)V
flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT
MethodParameters:
Name Flags
i
j
protected void setPivot(int);
descriptor: (I)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=2, args_size=2
start local 0 // org.apache.lucene.util.Sorter this
start local 1 // int i
0: .line 44
aload 0 /* this */
iload 1 /* i */
putfield org.apache.lucene.util.Sorter.pivotIndex:I
1: .line 45
return
end local 1 // int i
end local 0 // org.apache.lucene.util.Sorter this
LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/apache/lucene/util/Sorter;
0 2 1 i I
MethodParameters:
Name Flags
i
protected int comparePivot(int);
descriptor: (I)I
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=2, args_size=2
start local 0 // org.apache.lucene.util.Sorter this
start local 1 // int j
0: .line 50
aload 0 /* this */
aload 0 /* this */
getfield org.apache.lucene.util.Sorter.pivotIndex:I
iload 1 /* j */
invokevirtual org.apache.lucene.util.Sorter.compare:(II)I
ireturn
end local 1 // int j
end local 0 // org.apache.lucene.util.Sorter this
LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/apache/lucene/util/Sorter;
0 1 1 j I
MethodParameters:
Name Flags
j
public abstract void sort(int, int);
descriptor: (II)V
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
MethodParameters:
Name Flags
from
to
void checkRange(int, int);
descriptor: (II)V
flags: (0x0000)
Code:
stack=5, locals=3, args_size=3
start local 0 // org.apache.lucene.util.Sorter this
start local 1 // int from
start local 2 // int to
0: .line 58
iload 2 /* to */
iload 1 /* from */
if_icmpge 2
1: .line 59
new java.lang.IllegalArgumentException
dup
new java.lang.StringBuilder
dup
ldc "'to' must be >= 'from', got from="
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 1 /* from */
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc " and to="
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
iload 2 /* to */
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
2: .line 61
StackMap locals:
StackMap stack:
return
end local 2 // int to
end local 1 // int from
end local 0 // org.apache.lucene.util.Sorter this
LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/apache/lucene/util/Sorter;
0 3 1 from I
0 3 2 to I
MethodParameters:
Name Flags
from
to
void mergeInPlace(int, int, int);
descriptor: (III)V
flags: (0x0000)
Code:
stack=4, locals=9, args_size=4
start local 0 // org.apache.lucene.util.Sorter this
start local 1 // int from
start local 2 // int mid
start local 3 // int to
0: .line 64
iload 1 /* from */
iload 2 /* mid */
if_icmpeq 1
iload 2 /* mid */
iload 3 /* to */
if_icmpeq 1
aload 0 /* this */
iload 2 /* mid */
iconst_1
isub
iload 2 /* mid */
invokevirtual org.apache.lucene.util.Sorter.compare:(II)I
ifgt 2
1: .line 65
StackMap locals:
StackMap stack:
return
2: .line 66
StackMap locals:
StackMap stack:
iload 3 /* to */
iload 1 /* from */
isub
iconst_2
if_icmpne 6
3: .line 67
aload 0 /* this */
iload 2 /* mid */
iconst_1
isub
iload 2 /* mid */
invokevirtual org.apache.lucene.util.Sorter.swap:(II)V
4: .line 68
return
5: .line 71
StackMap locals:
StackMap stack:
iinc 1 /* from */ 1
6: .line 70
StackMap locals:
StackMap stack:
aload 0 /* this */
iload 1 /* from */
iload 2 /* mid */
invokevirtual org.apache.lucene.util.Sorter.compare:(II)I
ifle 5
7: .line 73
goto 9
8: .line 74
StackMap locals:
StackMap stack:
iinc 3 /* to */ -1
9: .line 73
StackMap locals:
StackMap stack:
aload 0 /* this */
iload 2 /* mid */
iconst_1
isub
iload 3 /* to */
iconst_1
isub
invokevirtual org.apache.lucene.util.Sorter.compare:(II)I
ifle 8
10: .line 78
iload 2 /* mid */
iload 1 /* from */
isub
iload 3 /* to */
iload 2 /* mid */
isub
if_icmple 16
11: .line 79
iload 2 /* mid */
iload 1 /* from */
isub
iconst_1
iushr
istore 6 /* len11 */
start local 6 // int len11
12: .line 80
iload 1 /* from */
iload 6 /* len11 */
iadd
istore 4 /* first_cut */
start local 4 // int first_cut
13: .line 81
aload 0 /* this */
iload 2 /* mid */
iload 3 /* to */
iload 4 /* first_cut */
invokevirtual org.apache.lucene.util.Sorter.lower:(III)I
istore 5 /* second_cut */
start local 5 // int second_cut
14: .line 82
iload 5 /* second_cut */
iload 2 /* mid */
isub
istore 7 /* len22 */
start local 7 // int len22
15: .line 83
goto 20
end local 7 // int len22
end local 6 // int len11
end local 5 // int second_cut
end local 4 // int first_cut
16: .line 84
StackMap locals:
StackMap stack:
iload 3 /* to */
iload 2 /* mid */
isub
iconst_1
iushr
istore 7 /* len22 */
start local 7 // int len22
17: .line 85
iload 2 /* mid */
iload 7 /* len22 */
iadd
istore 5 /* second_cut */
start local 5 // int second_cut
18: .line 86
aload 0 /* this */
iload 1 /* from */
iload 2 /* mid */
iload 5 /* second_cut */
invokevirtual org.apache.lucene.util.Sorter.upper:(III)I
istore 4 /* first_cut */
start local 4 // int first_cut
19: .line 87
iload 4 /* first_cut */
iload 1 /* from */
isub
istore 6 /* len11 */
start local 6 // int len11
20: .line 89
StackMap locals: org.apache.lucene.util.Sorter int int int int int int int
StackMap stack:
aload 0 /* this */
iload 4 /* first_cut */
iload 2 /* mid */
iload 5 /* second_cut */
invokevirtual org.apache.lucene.util.Sorter.rotate:(III)V
21: .line 90
iload 4 /* first_cut */
iload 7 /* len22 */
iadd
istore 8 /* new_mid */
start local 8 // int new_mid
22: .line 91
aload 0 /* this */
iload 1 /* from */
iload 4 /* first_cut */
iload 8 /* new_mid */
invokevirtual org.apache.lucene.util.Sorter.mergeInPlace:(III)V
23: .line 92
aload 0 /* this */
iload 8 /* new_mid */
iload 5 /* second_cut */
iload 3 /* to */
invokevirtual org.apache.lucene.util.Sorter.mergeInPlace:(III)V
24: .line 93
return
end local 8 // int new_mid
end local 7 // int len22
end local 6 // int len11
end local 5 // int second_cut
end local 4 // int first_cut
end local 3 // int to
end local 2 // int mid
end local 1 // int from
end local 0 // org.apache.lucene.util.Sorter this
LocalVariableTable:
Start End Slot Name Signature
0 25 0 this Lorg/apache/lucene/util/Sorter;
0 25 1 from I
0 25 2 mid I
0 25 3 to I
13 16 4 first_cut I
19 25 4 first_cut I
14 16 5 second_cut I
18 25 5 second_cut I
12 16 6 len11 I
20 25 6 len11 I
15 16 7 len22 I
17 25 7 len22 I
22 25 8 new_mid I
MethodParameters:
Name Flags
from
mid
to
int lower(int, int, int);
descriptor: (III)I
flags: (0x0000)
Code:
stack=3, locals=7, args_size=4
start local 0 // org.apache.lucene.util.Sorter this
start local 1 // int from
start local 2 // int to
start local 3 // int val
0: .line 96
iload 2 /* to */
iload 1 /* from */
isub
istore 4 /* len */
start local 4 // int len
1: .line 97
goto 9
2: .line 98
StackMap locals: int
StackMap stack:
iload 4 /* len */
iconst_1
iushr
istore 5 /* half */
start local 5 // int half
3: .line 99
iload 1 /* from */
iload 5 /* half */
iadd
istore 6 /* mid */
start local 6 // int mid
4: .line 100
aload 0 /* this */
iload 6 /* mid */
iload 3 /* val */
invokevirtual org.apache.lucene.util.Sorter.compare:(II)I
ifge 8
5: .line 101
iload 6 /* mid */
iconst_1
iadd
istore 1 /* from */
6: .line 102
iload 4 /* len */
iload 5 /* half */
isub
iconst_1
isub
istore 4 /* len */
7: .line 103
goto 9
8: .line 104
StackMap locals: int int
StackMap stack:
iload 5 /* half */
istore 4 /* len */
end local 6 // int mid
end local 5 // int half
9: .line 97
StackMap locals:
StackMap stack:
iload 4 /* len */
ifgt 2
10: .line 107
iload 1 /* from */
ireturn
end local 4 // int len
end local 3 // int val
end local 2 // int to
end local 1 // int from
end local 0 // org.apache.lucene.util.Sorter this
LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lorg/apache/lucene/util/Sorter;
0 11 1 from I
0 11 2 to I
0 11 3 val I
1 11 4 len I
3 9 5 half I
4 9 6 mid I
MethodParameters:
Name Flags
from
to
val
int upper(int, int, int);
descriptor: (III)I
flags: (0x0000)
Code:
stack=3, locals=7, args_size=4
start local 0 // org.apache.lucene.util.Sorter this
start local 1 // int from
start local 2 // int to
start local 3 // int val
0: .line 111
iload 2 /* to */
iload 1 /* from */
isub
istore 4 /* len */
start local 4 // int len
1: .line 112
goto 9
2: .line 113
StackMap locals: int
StackMap stack:
iload 4 /* len */
iconst_1
iushr
istore 5 /* half */
start local 5 // int half
3: .line 114
iload 1 /* from */
iload 5 /* half */
iadd
istore 6 /* mid */
start local 6 // int mid
4: .line 115
aload 0 /* this */
iload 3 /* val */
iload 6 /* mid */
invokevirtual org.apache.lucene.util.Sorter.compare:(II)I
ifge 7
5: .line 116
iload 5 /* half */
istore 4 /* len */
6: .line 117
goto 9
7: .line 118
StackMap locals: int int
StackMap stack:
iload 6 /* mid */
iconst_1
iadd
istore 1 /* from */
8: .line 119
iload 4 /* len */
iload 5 /* half */
isub
iconst_1
isub
istore 4 /* len */
end local 6 // int mid
end local 5 // int half
9: .line 112
StackMap locals:
StackMap stack:
iload 4 /* len */
ifgt 2
10: .line 122
iload 1 /* from */
ireturn
end local 4 // int len
end local 3 // int val
end local 2 // int to
end local 1 // int from
end local 0 // org.apache.lucene.util.Sorter this
LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lorg/apache/lucene/util/Sorter;
0 11 1 from I
0 11 2 to I
0 11 3 val I
1 11 4 len I
3 9 5 half I
4 9 6 mid I
MethodParameters:
Name Flags
from
to
val
int lower2(int, int, int);
descriptor: (III)I
flags: (0x0000)
Code:
stack=4, locals=7, args_size=4
start local 0 // org.apache.lucene.util.Sorter this
start local 1 // int from
start local 2 // int to
start local 3 // int val
0: .line 127
iload 2 /* to */
iconst_1
isub
istore 4 /* f */
start local 4 // int f
1: iload 2 /* to */
istore 5 /* t */
start local 5 // int t
2: .line 128
goto 8
3: .line 129
StackMap locals: int int
StackMap stack:
aload 0 /* this */
iload 4 /* f */
iload 3 /* val */
invokevirtual org.apache.lucene.util.Sorter.compare:(II)I
ifge 5
4: .line 130
aload 0 /* this */
iload 4 /* f */
iload 5 /* t */
iload 3 /* val */
invokevirtual org.apache.lucene.util.Sorter.lower:(III)I
ireturn
5: .line 132
StackMap locals:
StackMap stack:
iload 5 /* t */
iload 4 /* f */
isub
istore 6 /* delta */
start local 6 // int delta
6: .line 133
iload 4 /* f */
istore 5 /* t */
7: .line 134
iload 4 /* f */
iload 6 /* delta */
iconst_1
ishl
isub
istore 4 /* f */
end local 6 // int delta
8: .line 128
StackMap locals:
StackMap stack:
iload 4 /* f */
iload 1 /* from */
if_icmpgt 3
9: .line 136
aload 0 /* this */
iload 1 /* from */
iload 5 /* t */
iload 3 /* val */
invokevirtual org.apache.lucene.util.Sorter.lower:(III)I
ireturn
end local 5 // int t
end local 4 // int f
end local 3 // int val
end local 2 // int to
end local 1 // int from
end local 0 // org.apache.lucene.util.Sorter this
LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lorg/apache/lucene/util/Sorter;
0 10 1 from I
0 10 2 to I
0 10 3 val I
1 10 4 f I
2 10 5 t I
6 8 6 delta I
MethodParameters:
Name Flags
from
to
val
int upper2(int, int, int);
descriptor: (III)I
flags: (0x0000)
Code:
stack=4, locals=7, args_size=4
start local 0 // org.apache.lucene.util.Sorter this
start local 1 // int from
start local 2 // int to
start local 3 // int val
0: .line 141
iload 1 /* from */
istore 4 /* f */
start local 4 // int f
1: iload 4 /* f */
iconst_1
iadd
istore 5 /* t */
start local 5 // int t
2: .line 142
goto 8
3: .line 143
StackMap locals: int int
StackMap stack:
aload 0 /* this */
iload 5 /* t */
iload 3 /* val */
invokevirtual org.apache.lucene.util.Sorter.compare:(II)I
ifle 5
4: .line 144
aload 0 /* this */
iload 4 /* f */
iload 5 /* t */
iload 3 /* val */
invokevirtual org.apache.lucene.util.Sorter.upper:(III)I
ireturn
5: .line 146
StackMap locals:
StackMap stack:
iload 5 /* t */
iload 4 /* f */
isub
istore 6 /* delta */
start local 6 // int delta
6: .line 147
iload 5 /* t */
istore 4 /* f */
7: .line 148
iload 5 /* t */
iload 6 /* delta */
iconst_1
ishl
iadd
istore 5 /* t */
end local 6 // int delta
8: .line 142
StackMap locals:
StackMap stack:
iload 5 /* t */
iload 2 /* to */
if_icmplt 3
9: .line 150
aload 0 /* this */
iload 4 /* f */
iload 2 /* to */
iload 3 /* val */
invokevirtual org.apache.lucene.util.Sorter.upper:(III)I
ireturn
end local 5 // int t
end local 4 // int f
end local 3 // int val
end local 2 // int to
end local 1 // int from
end local 0 // org.apache.lucene.util.Sorter this
LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lorg/apache/lucene/util/Sorter;
0 10 1 from I
0 10 2 to I
0 10 3 val I
1 10 4 f I
2 10 5 t I
6 8 6 delta I
MethodParameters:
Name Flags
from
to
val
final void reverse(int, int);
descriptor: (II)V
flags: (0x0010) ACC_FINAL
Code:
stack=3, locals=3, args_size=3
start local 0 // org.apache.lucene.util.Sorter this
start local 1 // int from
start local 2 // int to
0: .line 154
iinc 2 /* to */ -1
goto 3
1: .line 155
StackMap locals:
StackMap stack:
aload 0 /* this */
iload 1 /* from */
iload 2 /* to */
invokevirtual org.apache.lucene.util.Sorter.swap:(II)V
2: .line 154
iinc 1 /* from */ 1
iinc 2 /* to */ -1
StackMap locals:
StackMap stack:
3: iload 1 /* from */
iload 2 /* to */
if_icmplt 1
4: .line 157
return
end local 2 // int to
end local 1 // int from
end local 0 // org.apache.lucene.util.Sorter this
LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/apache/lucene/util/Sorter;
0 5 1 from I
0 5 2 to I
MethodParameters:
Name Flags
from
to
final void rotate(int, int, int);
descriptor: (III)V
flags: (0x0010) ACC_FINAL
Code:
stack=4, locals=4, args_size=4
start local 0 // org.apache.lucene.util.Sorter this
start local 1 // int lo
start local 2 // int mid
start local 3 // int hi
0: .line 160
getstatic org.apache.lucene.util.Sorter.$assertionsDisabled:Z
ifne 2
iload 1 /* lo */
iload 2 /* mid */
if_icmpgt 1
iload 2 /* mid */
iload 3 /* hi */
if_icmple 2
StackMap locals:
StackMap stack:
1: new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
2: .line 161
StackMap locals:
StackMap stack:
iload 1 /* lo */
iload 2 /* mid */
if_icmpeq 3
iload 2 /* mid */
iload 3 /* hi */
if_icmpne 4
3: .line 162
StackMap locals:
StackMap stack:
return
4: .line 164
StackMap locals:
StackMap stack:
aload 0 /* this */
iload 1 /* lo */
iload 2 /* mid */
iload 3 /* hi */
invokevirtual org.apache.lucene.util.Sorter.doRotate:(III)V
5: .line 165
return
end local 3 // int hi
end local 2 // int mid
end local 1 // int lo
end local 0 // org.apache.lucene.util.Sorter this
LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/apache/lucene/util/Sorter;
0 6 1 lo I
0 6 2 mid I
0 6 3 hi I
MethodParameters:
Name Flags
lo
mid
hi
void doRotate(int, int, int);
descriptor: (III)V
flags: (0x0000)
Code:
stack=3, locals=4, args_size=4
start local 0 // org.apache.lucene.util.Sorter this
start local 1 // int lo
start local 2 // int mid
start local 3 // int hi
0: .line 168
iload 2 /* mid */
iload 1 /* lo */
isub
iload 3 /* hi */
iload 2 /* mid */
isub
if_icmpne 5
1: .line 170
goto 3
2: .line 171
StackMap locals:
StackMap stack:
aload 0 /* this */
iload 1 /* lo */
iinc 1 /* lo */ 1
iload 2 /* mid */
iinc 2 /* mid */ 1
invokevirtual org.apache.lucene.util.Sorter.swap:(II)V
3: .line 170
StackMap locals:
StackMap stack:
iload 2 /* mid */
iload 3 /* hi */
if_icmplt 2
4: .line 173
goto 8
5: .line 174
StackMap locals:
StackMap stack:
aload 0 /* this */
iload 1 /* lo */
iload 2 /* mid */
invokevirtual org.apache.lucene.util.Sorter.reverse:(II)V
6: .line 175
aload 0 /* this */
iload 2 /* mid */
iload 3 /* hi */
invokevirtual org.apache.lucene.util.Sorter.reverse:(II)V
7: .line 176
aload 0 /* this */
iload 1 /* lo */
iload 3 /* hi */
invokevirtual org.apache.lucene.util.Sorter.reverse:(II)V
8: .line 178
StackMap locals:
StackMap stack:
return
end local 3 // int hi
end local 2 // int mid
end local 1 // int lo
end local 0 // org.apache.lucene.util.Sorter this
LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lorg/apache/lucene/util/Sorter;
0 9 1 lo I
0 9 2 mid I
0 9 3 hi I
MethodParameters:
Name Flags
lo
mid
hi
void binarySort(int, int);
descriptor: (II)V
flags: (0x0000)
Code:
stack=5, locals=3, args_size=3
start local 0 // org.apache.lucene.util.Sorter this
start local 1 // int from
start local 2 // int to
0: .line 187
aload 0 /* this */
iload 1 /* from */
iload 2 /* to */
iload 1 /* from */
iconst_1
iadd
invokevirtual org.apache.lucene.util.Sorter.binarySort:(III)V
1: .line 188
return
end local 2 // int to
end local 1 // int from
end local 0 // org.apache.lucene.util.Sorter this
LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/apache/lucene/util/Sorter;
0 2 1 from I
0 2 2 to I
MethodParameters:
Name Flags
from
to
void binarySort(int, int, int);
descriptor: (III)V
flags: (0x0000)
Code:
stack=3, locals=8, args_size=4
start local 0 // org.apache.lucene.util.Sorter this
start local 1 // int from
start local 2 // int to
start local 3 // int i
0: .line 191
goto 18
1: .line 192
StackMap locals:
StackMap stack:
aload 0 /* this */
iload 3 /* i */
invokevirtual org.apache.lucene.util.Sorter.setPivot:(I)V
2: .line 193
iload 1 /* from */
istore 4 /* l */
start local 4 // int l
3: .line 194
iload 3 /* i */
iconst_1
isub
istore 5 /* h */
start local 5 // int h
4: .line 195
goto 11
5: .line 196
StackMap locals: int int
StackMap stack:
iload 4 /* l */
iload 5 /* h */
iadd
iconst_1
iushr
istore 6 /* mid */
start local 6 // int mid
6: .line 197
aload 0 /* this */
iload 6 /* mid */
invokevirtual org.apache.lucene.util.Sorter.comparePivot:(I)I
istore 7 /* cmp */
start local 7 // int cmp
7: .line 198
iload 7 /* cmp */
ifge 10
8: .line 199
iload 6 /* mid */
iconst_1
isub
istore 5 /* h */
9: .line 200
goto 11
10: .line 201
StackMap locals: int int
StackMap stack:
iload 6 /* mid */
iconst_1
iadd
istore 4 /* l */
end local 7 // int cmp
end local 6 // int mid
11: .line 195
StackMap locals:
StackMap stack:
iload 4 /* l */
iload 5 /* h */
if_icmple 5
12: .line 204
iload 3 /* i */
istore 6 /* j */
start local 6 // int j
13: goto 16
14: .line 205
StackMap locals: int
StackMap stack:
aload 0 /* this */
iload 6 /* j */
iconst_1
isub
iload 6 /* j */
invokevirtual org.apache.lucene.util.Sorter.swap:(II)V
15: .line 204
iinc 6 /* j */ -1
StackMap locals:
StackMap stack:
16: iload 6 /* j */
iload 4 /* l */
if_icmpgt 14
end local 6 // int j
end local 5 // int h
end local 4 // int l
17: .line 191
iinc 3 /* i */ 1
StackMap locals:
StackMap stack:
18: iload 3 /* i */
iload 2 /* to */
if_icmplt 1
19: .line 208
return
end local 3 // int i
end local 2 // int to
end local 1 // int from
end local 0 // org.apache.lucene.util.Sorter this
LocalVariableTable:
Start End Slot Name Signature
0 20 0 this Lorg/apache/lucene/util/Sorter;
0 20 1 from I
0 20 2 to I
0 20 3 i I
3 17 4 l I
4 17 5 h I
6 11 6 mid I
7 11 7 cmp I
13 17 6 j I
MethodParameters:
Name Flags
from
to
i
void heapSort(int, int);
descriptor: (II)V
flags: (0x0000)
Code:
stack=4, locals=4, args_size=3
start local 0 // org.apache.lucene.util.Sorter this
start local 1 // int from
start local 2 // int to
0: .line 216
iload 2 /* to */
iload 1 /* from */
isub
iconst_1
if_icmpgt 2
1: .line 217
return
2: .line 219
StackMap locals:
StackMap stack:
aload 0 /* this */
iload 1 /* from */
iload 2 /* to */
invokevirtual org.apache.lucene.util.Sorter.heapify:(II)V
3: .line 220
iload 2 /* to */
iconst_1
isub
istore 3 /* end */
start local 3 // int end
4: goto 8
5: .line 221
StackMap locals: int
StackMap stack:
aload 0 /* this */
iload 1 /* from */
iload 3 /* end */
invokevirtual org.apache.lucene.util.Sorter.swap:(II)V
6: .line 222
aload 0 /* this */
iload 1 /* from */
iload 1 /* from */
iload 3 /* end */
invokevirtual org.apache.lucene.util.Sorter.siftDown:(III)V
7: .line 220
iinc 3 /* end */ -1
StackMap locals:
StackMap stack:
8: iload 3 /* end */
iload 1 /* from */
if_icmpgt 5
end local 3 // int end
9: .line 224
return
end local 2 // int to
end local 1 // int from
end local 0 // org.apache.lucene.util.Sorter this
LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lorg/apache/lucene/util/Sorter;
0 10 1 from I
0 10 2 to I
4 9 3 end I
MethodParameters:
Name Flags
from
to
void heapify(int, int);
descriptor: (II)V
flags: (0x0000)
Code:
stack=4, locals=4, args_size=3
start local 0 // org.apache.lucene.util.Sorter this
start local 1 // int from
start local 2 // int to
0: .line 227
iload 1 /* from */
iload 2 /* to */
iconst_1
isub
invokestatic org.apache.lucene.util.Sorter.heapParent:(II)I
istore 3 /* i */
start local 3 // int i
1: goto 4
2: .line 228
StackMap locals: int
StackMap stack:
aload 0 /* this */
iload 3 /* i */
iload 1 /* from */
iload 2 /* to */
invokevirtual org.apache.lucene.util.Sorter.siftDown:(III)V
3: .line 227
iinc 3 /* i */ -1
StackMap locals:
StackMap stack:
4: iload 3 /* i */
iload 1 /* from */
if_icmpge 2
end local 3 // int i
5: .line 230
return
end local 2 // int to
end local 1 // int from
end local 0 // org.apache.lucene.util.Sorter this
LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/apache/lucene/util/Sorter;
0 6 1 from I
0 6 2 to I
1 5 3 i I
MethodParameters:
Name Flags
from
to
void siftDown(int, int, int);
descriptor: (III)V
flags: (0x0000)
Code:
stack=3, locals=6, args_size=4
start local 0 // org.apache.lucene.util.Sorter this
start local 1 // int i
start local 2 // int from
start local 3 // int to
0: .line 233
iload 2 /* from */
iload 1 /* i */
invokestatic org.apache.lucene.util.Sorter.heapChild:(II)I
istore 4 /* leftChild */
start local 4 // int leftChild
1: goto 15
2: .line 234
StackMap locals: int
StackMap stack:
iload 4 /* leftChild */
iconst_1
iadd
istore 5 /* rightChild */
start local 5 // int rightChild
3: .line 235
aload 0 /* this */
iload 1 /* i */
iload 4 /* leftChild */
invokevirtual org.apache.lucene.util.Sorter.compare:(II)I
ifge 11
4: .line 236
iload 5 /* rightChild */
iload 3 /* to */
if_icmpge 8
aload 0 /* this */
iload 4 /* leftChild */
iload 5 /* rightChild */
invokevirtual org.apache.lucene.util.Sorter.compare:(II)I
ifge 8
5: .line 237
aload 0 /* this */
iload 1 /* i */
iload 5 /* rightChild */
invokevirtual org.apache.lucene.util.Sorter.swap:(II)V
6: .line 238
iload 5 /* rightChild */
istore 1 /* i */
7: .line 239
goto 14
8: .line 240
StackMap locals: int
StackMap stack:
aload 0 /* this */
iload 1 /* i */
iload 4 /* leftChild */
invokevirtual org.apache.lucene.util.Sorter.swap:(II)V
9: .line 241
iload 4 /* leftChild */
istore 1 /* i */
10: .line 243
goto 14
StackMap locals:
StackMap stack:
11: iload 5 /* rightChild */
iload 3 /* to */
if_icmpge 16
aload 0 /* this */
iload 1 /* i */
iload 5 /* rightChild */
invokevirtual org.apache.lucene.util.Sorter.compare:(II)I
ifge 16
12: .line 244
aload 0 /* this */
iload 1 /* i */
iload 5 /* rightChild */
invokevirtual org.apache.lucene.util.Sorter.swap:(II)V
13: .line 245
iload 5 /* rightChild */
istore 1 /* i */
end local 5 // int rightChild
14: .line 233
StackMap locals:
StackMap stack:
iload 2 /* from */
iload 1 /* i */
invokestatic org.apache.lucene.util.Sorter.heapChild:(II)I
istore 4 /* leftChild */
StackMap locals:
StackMap stack:
15: iload 4 /* leftChild */
iload 3 /* to */
if_icmplt 2
end local 4 // int leftChild
16: .line 250
StackMap locals:
StackMap stack:
return
end local 3 // int to
end local 2 // int from
end local 1 // int i
end local 0 // org.apache.lucene.util.Sorter this
LocalVariableTable:
Start End Slot Name Signature
0 17 0 this Lorg/apache/lucene/util/Sorter;
0 17 1 i I
0 17 2 from I
0 17 3 to I
1 16 4 leftChild I
3 14 5 rightChild I
MethodParameters:
Name Flags
i
from
to
static int heapParent(int, int);
descriptor: (II)I
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=2, args_size=2
start local 0 // int from
start local 1 // int i
0: .line 253
iload 1 /* i */
iconst_1
isub
iload 0 /* from */
isub
iconst_1
iushr
iload 0 /* from */
iadd
ireturn
end local 1 // int i
end local 0 // int from
LocalVariableTable:
Start End Slot Name Signature
0 1 0 from I
0 1 1 i I
MethodParameters:
Name Flags
from
i
static int heapChild(int, int);
descriptor: (II)I
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=2, args_size=2
start local 0 // int from
start local 1 // int i
0: .line 257
iload 1 /* i */
iload 0 /* from */
isub
iconst_1
ishl
iconst_1
iadd
iload 0 /* from */
iadd
ireturn
end local 1 // int i
end local 0 // int from
LocalVariableTable:
Start End Slot Name Signature
0 1 0 from I
0 1 1 i I
MethodParameters:
Name Flags
from
i
}
SourceFile: "Sorter.java"