class org.apache.lucene.search.grouping.SearchGroup$GroupComparator<T> implements java.util.Comparator<org.apache.lucene.search.grouping.SearchGroup$MergedGroup<T>>
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: org.apache.lucene.search.grouping.SearchGroup$GroupComparator
super_class: java.lang.Object
{
public final org.apache.lucene.search.FieldComparator[] comparators;
descriptor: [Lorg/apache/lucene/search/FieldComparator;
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
public final int[] reversed;
descriptor: [I
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
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: ldc Lorg/apache/lucene/search/grouping/SearchGroup;
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.grouping.SearchGroup$GroupComparator.$assertionsDisabled:Z
return
LocalVariableTable:
Start End Slot Name Signature
public void <init>(org.apache.lucene.search.Sort);
descriptor: (Lorg/apache/lucene/search/Sort;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=5, args_size=2
start local 0 start local 1 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 1
invokevirtual org.apache.lucene.search.Sort.getSort:()[Lorg/apache/lucene/search/SortField;
astore 2
start local 2 2: aload 0
aload 2
arraylength
anewarray org.apache.lucene.search.FieldComparator
putfield org.apache.lucene.search.grouping.SearchGroup$GroupComparator.comparators:[Lorg/apache/lucene/search/FieldComparator;
3: aload 0
aload 2
arraylength
newarray 10
putfield org.apache.lucene.search.grouping.SearchGroup$GroupComparator.reversed:[I
4: iconst_0
istore 3
start local 3 5: goto 12
6: StackMap locals: org.apache.lucene.search.grouping.SearchGroup$GroupComparator org.apache.lucene.search.Sort org.apache.lucene.search.SortField[] int
StackMap stack:
aload 2
iload 3
aaload
astore 4
start local 4 7: aload 0
getfield org.apache.lucene.search.grouping.SearchGroup$GroupComparator.comparators:[Lorg/apache/lucene/search/FieldComparator;
iload 3
aload 4
iconst_1
iload 3
invokevirtual org.apache.lucene.search.SortField.getComparator:(II)Lorg/apache/lucene/search/FieldComparator;
aastore
8: aload 0
getfield org.apache.lucene.search.grouping.SearchGroup$GroupComparator.reversed:[I
iload 3
aload 4
invokevirtual org.apache.lucene.search.SortField.getReverse:()Z
ifeq 9
iconst_m1
goto 10
StackMap locals: org.apache.lucene.search.grouping.SearchGroup$GroupComparator org.apache.lucene.search.Sort org.apache.lucene.search.SortField[] int org.apache.lucene.search.SortField
StackMap stack: int[] int
9: iconst_1
StackMap locals: org.apache.lucene.search.grouping.SearchGroup$GroupComparator org.apache.lucene.search.Sort org.apache.lucene.search.SortField[] int org.apache.lucene.search.SortField
StackMap stack: int[] int int
10: iastore
end local 4 11: iinc 3 1
StackMap locals:
StackMap stack:
12: iload 3
aload 2
arraylength
if_icmplt 6
end local 3 13: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 this Lorg/apache/lucene/search/grouping/SearchGroup$GroupComparator<TT;>;
0 14 1 groupSort Lorg/apache/lucene/search/Sort;
2 14 2 sortFields [Lorg/apache/lucene/search/SortField;
5 13 3 compIDX I
7 11 4 sortField Lorg/apache/lucene/search/SortField;
MethodParameters:
Name Flags
groupSort
public int compare(org.apache.lucene.search.grouping.SearchGroup$MergedGroup<T>, org.apache.lucene.search.grouping.SearchGroup$MergedGroup<T>);
descriptor: (Lorg/apache/lucene/search/grouping/SearchGroup$MergedGroup;Lorg/apache/lucene/search/grouping/SearchGroup$MergedGroup;)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=7, args_size=3
start local 0 start local 1 start local 2 0: aload 1
aload 2
if_acmpne 2
1: iconst_0
ireturn
2: StackMap locals:
StackMap stack:
aload 1
getfield org.apache.lucene.search.grouping.SearchGroup$MergedGroup.topValues:[Ljava/lang/Object;
astore 3
start local 3 3: aload 2
getfield org.apache.lucene.search.grouping.SearchGroup$MergedGroup.topValues:[Ljava/lang/Object;
astore 4
start local 4 4: iconst_0
istore 5
start local 5 5: goto 12
6: StackMap locals: java.lang.Object[] java.lang.Object[] int
StackMap stack:
aload 0
getfield org.apache.lucene.search.grouping.SearchGroup$GroupComparator.reversed:[I
iload 5
iaload
aload 0
getfield org.apache.lucene.search.grouping.SearchGroup$GroupComparator.comparators:[Lorg/apache/lucene/search/FieldComparator;
iload 5
aaload
aload 3
iload 5
aaload
7: aload 4
iload 5
aaload
8: invokevirtual org.apache.lucene.search.FieldComparator.compareValues:(Ljava/lang/Object;Ljava/lang/Object;)I
imul
istore 6
start local 6 9: iload 6
ifeq 11
10: iload 6
ireturn
end local 6 11: StackMap locals:
StackMap stack:
iinc 5 1
StackMap locals:
StackMap stack:
12: iload 5
aload 0
getfield org.apache.lucene.search.grouping.SearchGroup$GroupComparator.comparators:[Lorg/apache/lucene/search/FieldComparator;
arraylength
if_icmplt 6
end local 5 13: getstatic org.apache.lucene.search.grouping.SearchGroup$GroupComparator.$assertionsDisabled:Z
ifne 14
aload 1
getfield org.apache.lucene.search.grouping.SearchGroup$MergedGroup.minShardIndex:I
aload 2
getfield org.apache.lucene.search.grouping.SearchGroup$MergedGroup.minShardIndex:I
if_icmpne 14
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
14: StackMap locals:
StackMap stack:
aload 1
getfield org.apache.lucene.search.grouping.SearchGroup$MergedGroup.minShardIndex:I
aload 2
getfield org.apache.lucene.search.grouping.SearchGroup$MergedGroup.minShardIndex:I
isub
ireturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 15 0 this Lorg/apache/lucene/search/grouping/SearchGroup$GroupComparator<TT;>;
0 15 1 group Lorg/apache/lucene/search/grouping/SearchGroup$MergedGroup<TT;>;
0 15 2 other Lorg/apache/lucene/search/grouping/SearchGroup$MergedGroup<TT;>;
3 15 3 groupValues [Ljava/lang/Object;
4 15 4 otherValues [Ljava/lang/Object;
5 13 5 compIDX I
9 11 6 c I
Signature: (Lorg/apache/lucene/search/grouping/SearchGroup$MergedGroup<TT;>;Lorg/apache/lucene/search/grouping/SearchGroup$MergedGroup<TT;>;)I
MethodParameters:
Name Flags
group
other
public int compare(java.lang.Object, java.lang.Object);
descriptor: (Ljava/lang/Object;Ljava/lang/Object;)I
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=3, locals=3, args_size=3
0: aload 0
aload 1
checkcast org.apache.lucene.search.grouping.SearchGroup$MergedGroup
aload 2
checkcast org.apache.lucene.search.grouping.SearchGroup$MergedGroup
invokevirtual org.apache.lucene.search.grouping.SearchGroup$GroupComparator.compare:(Lorg/apache/lucene/search/grouping/SearchGroup$MergedGroup;Lorg/apache/lucene/search/grouping/SearchGroup$MergedGroup;)I
ireturn
LocalVariableTable:
Start End Slot Name Signature
}
Signature: <T:Ljava/lang/Object;>Ljava/lang/Object;Ljava/util/Comparator<Lorg/apache/lucene/search/grouping/SearchGroup$MergedGroup<TT;>;>;
SourceFile: "SearchGroup.java"
NestHost: org.apache.lucene.search.grouping.SearchGroup
InnerClasses:
private GroupComparator = org.apache.lucene.search.grouping.SearchGroup$GroupComparator of org.apache.lucene.search.grouping.SearchGroup
private MergedGroup = org.apache.lucene.search.grouping.SearchGroup$MergedGroup of org.apache.lucene.search.grouping.SearchGroup