public final class org.apache.lucene.search.DisjunctionMaxQuery extends org.apache.lucene.search.Query implements java.lang.Iterable<org.apache.lucene.search.Query>
minor version: 0
major version: 59
flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
this_class: org.apache.lucene.search.DisjunctionMaxQuery
super_class: org.apache.lucene.search.Query
{
private final org.apache.lucene.search.Query[] disjuncts;
descriptor: [Lorg/apache/lucene/search/Query;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final float tieBreakerMultiplier;
descriptor: F
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
public void <init>(java.util.Collection<org.apache.lucene.search.Query>, );
descriptor: (Ljava/util/Collection;F)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokespecial org.apache.lucene.search.Query.<init>:()V
1: aload 1
ldc "Collection of Querys must not be null"
invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
pop
2: fload 2
fconst_0
fcmpg
iflt 3
fload 2
fconst_1
fcmpl
ifle 4
3: StackMap locals: org.apache.lucene.search.DisjunctionMaxQuery java.util.Collection float
StackMap stack:
new java.lang.IllegalArgumentException
dup
ldc "tieBreakerMultiplier must be in [0, 1]"
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
4: StackMap locals:
StackMap stack:
aload 0
fload 2
putfield org.apache.lucene.search.DisjunctionMaxQuery.tieBreakerMultiplier:F
5: aload 0
aload 1
aload 1
invokeinterface java.util.Collection.size:()I
anewarray org.apache.lucene.search.Query
invokeinterface java.util.Collection.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
checkcast org.apache.lucene.search.Query[]
putfield org.apache.lucene.search.DisjunctionMaxQuery.disjuncts:[Lorg/apache/lucene/search/Query;
6: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/apache/lucene/search/DisjunctionMaxQuery;
0 7 1 disjuncts Ljava/util/Collection<Lorg/apache/lucene/search/Query;>;
0 7 2 tieBreakerMultiplier F
Signature: (Ljava/util/Collection<Lorg/apache/lucene/search/Query;>;F)V
MethodParameters:
Name Flags
disjuncts
tieBreakerMultiplier
public java.util.Iterator<org.apache.lucene.search.Query> iterator();
descriptor: ()Ljava/util/Iterator;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual org.apache.lucene.search.DisjunctionMaxQuery.getDisjuncts:()Ljava/util/List;
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/apache/lucene/search/DisjunctionMaxQuery;
Signature: ()Ljava/util/Iterator<Lorg/apache/lucene/search/Query;>;
public java.util.List<org.apache.lucene.search.Query> getDisjuncts();
descriptor: ()Ljava/util/List;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.apache.lucene.search.DisjunctionMaxQuery.disjuncts:[Lorg/apache/lucene/search/Query;
invokestatic java.util.Arrays.asList:([Ljava/lang/Object;)Ljava/util/List;
invokestatic java.util.Collections.unmodifiableList:(Ljava/util/List;)Ljava/util/List;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/apache/lucene/search/DisjunctionMaxQuery;
Signature: ()Ljava/util/List<Lorg/apache/lucene/search/Query;>;
public float getTieBreakerMultiplier();
descriptor: ()F
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.apache.lucene.search.DisjunctionMaxQuery.tieBreakerMultiplier:F
freturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/apache/lucene/search/DisjunctionMaxQuery;
public org.apache.lucene.search.Weight createWeight(org.apache.lucene.search.IndexSearcher, org.apache.lucene.search.ScoreMode, float);
descriptor: (Lorg/apache/lucene/search/IndexSearcher;Lorg/apache/lucene/search/ScoreMode;F)Lorg/apache/lucene/search/Weight;
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: new org.apache.lucene.search.DisjunctionMaxQuery$DisjunctionMaxWeight
dup
aload 0
aload 1
aload 2
fload 3
invokespecial org.apache.lucene.search.DisjunctionMaxQuery$DisjunctionMaxWeight.<init>:(Lorg/apache/lucene/search/DisjunctionMaxQuery;Lorg/apache/lucene/search/IndexSearcher;Lorg/apache/lucene/search/ScoreMode;F)V
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/apache/lucene/search/DisjunctionMaxQuery;
0 1 1 searcher Lorg/apache/lucene/search/IndexSearcher;
0 1 2 scoreMode Lorg/apache/lucene/search/ScoreMode;
0 1 3 boost F
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
searcher
scoreMode
boost
public org.apache.lucene.search.Query rewrite(org.apache.lucene.index.IndexReader);
descriptor: (Lorg/apache/lucene/index/IndexReader;)Lorg/apache/lucene/search/Query;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=9, args_size=2
start local 0 start local 1 0: aload 0
getfield org.apache.lucene.search.DisjunctionMaxQuery.disjuncts:[Lorg/apache/lucene/search/Query;
arraylength
iconst_1
if_icmpne 2
1: aload 0
getfield org.apache.lucene.search.DisjunctionMaxQuery.disjuncts:[Lorg/apache/lucene/search/Query;
iconst_0
aaload
areturn
2: StackMap locals:
StackMap stack:
aload 0
getfield org.apache.lucene.search.DisjunctionMaxQuery.tieBreakerMultiplier:F
fconst_1
fcmpl
ifne 10
3: new org.apache.lucene.search.BooleanQuery$Builder
dup
invokespecial org.apache.lucene.search.BooleanQuery$Builder.<init>:()V
astore 2
start local 2 4: aload 0
getfield org.apache.lucene.search.DisjunctionMaxQuery.disjuncts:[Lorg/apache/lucene/search/Query;
dup
astore 6
arraylength
istore 5
iconst_0
istore 4
goto 8
StackMap locals: org.apache.lucene.search.DisjunctionMaxQuery org.apache.lucene.index.IndexReader org.apache.lucene.search.BooleanQuery$Builder top int int org.apache.lucene.search.Query[]
StackMap stack:
5: aload 6
iload 4
aaload
astore 3
start local 3 6: aload 2
aload 3
getstatic org.apache.lucene.search.BooleanClause$Occur.SHOULD:Lorg/apache/lucene/search/BooleanClause$Occur;
invokevirtual org.apache.lucene.search.BooleanQuery$Builder.add:(Lorg/apache/lucene/search/Query;Lorg/apache/lucene/search/BooleanClause$Occur;)Lorg/apache/lucene/search/BooleanQuery$Builder;
pop
end local 3 7: iinc 4 1
StackMap locals:
StackMap stack:
8: iload 4
iload 5
if_icmplt 5
9: aload 2
invokevirtual org.apache.lucene.search.BooleanQuery$Builder.build:()Lorg/apache/lucene/search/BooleanQuery;
areturn
end local 2 10: StackMap locals: org.apache.lucene.search.DisjunctionMaxQuery org.apache.lucene.index.IndexReader
StackMap stack:
iconst_0
istore 2
start local 2 11: new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
astore 3
start local 3 12: aload 0
getfield org.apache.lucene.search.DisjunctionMaxQuery.disjuncts:[Lorg/apache/lucene/search/Query;
dup
astore 7
arraylength
istore 6
iconst_0
istore 5
goto 20
StackMap locals: org.apache.lucene.search.DisjunctionMaxQuery org.apache.lucene.index.IndexReader int java.util.List top int int org.apache.lucene.search.Query[]
StackMap stack:
13: aload 7
iload 5
aaload
astore 4
start local 4 14: aload 4
aload 1
invokevirtual org.apache.lucene.search.Query.rewrite:(Lorg/apache/lucene/index/IndexReader;)Lorg/apache/lucene/search/Query;
astore 8
start local 8 15: iload 2
aload 8
aload 4
if_acmpeq 16
iconst_1
goto 17
StackMap locals: org.apache.lucene.search.DisjunctionMaxQuery org.apache.lucene.index.IndexReader int java.util.List org.apache.lucene.search.Query int int org.apache.lucene.search.Query[] org.apache.lucene.search.Query
StackMap stack: int
16: iconst_0
StackMap locals: org.apache.lucene.search.DisjunctionMaxQuery org.apache.lucene.index.IndexReader int java.util.List org.apache.lucene.search.Query int int org.apache.lucene.search.Query[] org.apache.lucene.search.Query
StackMap stack: int int
17: ior
istore 2
18: aload 3
aload 8
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
end local 8 end local 4 19: iinc 5 1
StackMap locals: org.apache.lucene.search.DisjunctionMaxQuery org.apache.lucene.index.IndexReader int java.util.List top int int org.apache.lucene.search.Query[]
StackMap stack:
20: iload 5
iload 6
if_icmplt 13
21: iload 2
ifeq 23
22: new org.apache.lucene.search.DisjunctionMaxQuery
dup
aload 3
aload 0
getfield org.apache.lucene.search.DisjunctionMaxQuery.tieBreakerMultiplier:F
invokespecial org.apache.lucene.search.DisjunctionMaxQuery.<init>:(Ljava/util/Collection;F)V
areturn
23: StackMap locals: org.apache.lucene.search.DisjunctionMaxQuery org.apache.lucene.index.IndexReader int java.util.List
StackMap stack:
aload 0
aload 1
invokespecial org.apache.lucene.search.Query.rewrite:(Lorg/apache/lucene/index/IndexReader;)Lorg/apache/lucene/search/Query;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 24 0 this Lorg/apache/lucene/search/DisjunctionMaxQuery;
0 24 1 reader Lorg/apache/lucene/index/IndexReader;
4 10 2 builder Lorg/apache/lucene/search/BooleanQuery$Builder;
6 7 3 sub Lorg/apache/lucene/search/Query;
11 24 2 actuallyRewritten Z
12 24 3 rewrittenDisjuncts Ljava/util/List<Lorg/apache/lucene/search/Query;>;
14 19 4 sub Lorg/apache/lucene/search/Query;
15 19 8 rewrittenSub Lorg/apache/lucene/search/Query;
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
reader
public void visit(org.apache.lucene.search.QueryVisitor);
descriptor: (Lorg/apache/lucene/search/QueryVisitor;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=7, args_size=2
start local 0 start local 1 0: aload 1
getstatic org.apache.lucene.search.BooleanClause$Occur.SHOULD:Lorg/apache/lucene/search/BooleanClause$Occur;
aload 0
invokevirtual org.apache.lucene.search.QueryVisitor.getSubVisitor:(Lorg/apache/lucene/search/BooleanClause$Occur;Lorg/apache/lucene/search/Query;)Lorg/apache/lucene/search/QueryVisitor;
astore 2
start local 2 1: aload 0
getfield org.apache.lucene.search.DisjunctionMaxQuery.disjuncts:[Lorg/apache/lucene/search/Query;
dup
astore 6
arraylength
istore 5
iconst_0
istore 4
goto 5
StackMap locals: org.apache.lucene.search.DisjunctionMaxQuery org.apache.lucene.search.QueryVisitor org.apache.lucene.search.QueryVisitor top int int org.apache.lucene.search.Query[]
StackMap stack:
2: aload 6
iload 4
aaload
astore 3
start local 3 3: aload 3
aload 2
invokevirtual org.apache.lucene.search.Query.visit:(Lorg/apache/lucene/search/QueryVisitor;)V
end local 3 4: iinc 4 1
StackMap locals:
StackMap stack:
5: iload 4
iload 5
if_icmplt 2
6: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/apache/lucene/search/DisjunctionMaxQuery;
0 7 1 visitor Lorg/apache/lucene/search/QueryVisitor;
1 7 2 v Lorg/apache/lucene/search/QueryVisitor;
3 4 3 q Lorg/apache/lucene/search/Query;
MethodParameters:
Name Flags
visitor
public java.lang.String toString(java.lang.String);
descriptor: (Ljava/lang/String;)Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=5, args_size=2
start local 0 start local 1 0: new java.lang.StringBuilder
dup
invokespecial java.lang.StringBuilder.<init>:()V
astore 2
start local 2 1: aload 2
ldc "("
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
2: iconst_0
istore 3
start local 3 3: goto 13
4: StackMap locals: java.lang.StringBuilder int
StackMap stack:
aload 0
getfield org.apache.lucene.search.DisjunctionMaxQuery.disjuncts:[Lorg/apache/lucene/search/Query;
iload 3
aaload
astore 4
start local 4 5: aload 4
instanceof org.apache.lucene.search.BooleanQuery
ifeq 10
6: aload 2
ldc "("
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
7: aload 2
aload 4
aload 1
invokevirtual org.apache.lucene.search.Query.toString:(Ljava/lang/String;)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
8: aload 2
ldc ")"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
9: goto 11
10: StackMap locals: org.apache.lucene.search.Query
StackMap stack:
aload 2
aload 4
aload 1
invokevirtual org.apache.lucene.search.Query.toString:(Ljava/lang/String;)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
11: StackMap locals:
StackMap stack:
iload 3
aload 0
getfield org.apache.lucene.search.DisjunctionMaxQuery.disjuncts:[Lorg/apache/lucene/search/Query;
arraylength
iconst_1
isub
if_icmpeq 12
aload 2
ldc " | "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
end local 4 12: StackMap locals:
StackMap stack:
iinc 3 1
StackMap locals:
StackMap stack:
13: iload 3
aload 0
getfield org.apache.lucene.search.DisjunctionMaxQuery.disjuncts:[Lorg/apache/lucene/search/Query;
arraylength
if_icmplt 4
end local 3 14: aload 2
ldc ")"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
15: aload 0
getfield org.apache.lucene.search.DisjunctionMaxQuery.tieBreakerMultiplier:F
fconst_0
fcmpl
ifeq 18
16: aload 2
ldc "~"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
17: aload 2
aload 0
getfield org.apache.lucene.search.DisjunctionMaxQuery.tieBreakerMultiplier:F
invokevirtual java.lang.StringBuilder.append:(F)Ljava/lang/StringBuilder;
pop
18: StackMap locals:
StackMap stack:
aload 2
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 19 0 this Lorg/apache/lucene/search/DisjunctionMaxQuery;
0 19 1 field Ljava/lang/String;
1 19 2 buffer Ljava/lang/StringBuilder;
3 14 3 i I
5 12 4 subquery Lorg/apache/lucene/search/Query;
MethodParameters:
Name Flags
field
public boolean equals(java.lang.Object);
descriptor: (Ljava/lang/Object;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokevirtual org.apache.lucene.search.DisjunctionMaxQuery.sameClassAs:(Ljava/lang/Object;)Z
ifeq 3
1: aload 0
aload 0
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
aload 1
invokevirtual java.lang.Class.cast:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast org.apache.lucene.search.DisjunctionMaxQuery
invokevirtual org.apache.lucene.search.DisjunctionMaxQuery.equalsTo:(Lorg/apache/lucene/search/DisjunctionMaxQuery;)Z
ifeq 3
2: iconst_1
ireturn
StackMap locals:
StackMap stack:
3: iconst_0
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/apache/lucene/search/DisjunctionMaxQuery;
0 4 1 other Ljava/lang/Object;
MethodParameters:
Name Flags
other
private boolean equalsTo(org.apache.lucene.search.DisjunctionMaxQuery);
descriptor: (Lorg/apache/lucene/search/DisjunctionMaxQuery;)Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield org.apache.lucene.search.DisjunctionMaxQuery.tieBreakerMultiplier:F
aload 1
getfield org.apache.lucene.search.DisjunctionMaxQuery.tieBreakerMultiplier:F
fcmpl
ifne 3
1: aload 0
getfield org.apache.lucene.search.DisjunctionMaxQuery.disjuncts:[Lorg/apache/lucene/search/Query;
aload 1
getfield org.apache.lucene.search.DisjunctionMaxQuery.disjuncts:[Lorg/apache/lucene/search/Query;
invokestatic java.util.Arrays.equals:([Ljava/lang/Object;[Ljava/lang/Object;)Z
ifeq 3
2: iconst_1
ireturn
StackMap locals:
StackMap stack:
3: iconst_0
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/apache/lucene/search/DisjunctionMaxQuery;
0 4 1 other Lorg/apache/lucene/search/DisjunctionMaxQuery;
MethodParameters:
Name Flags
other
public int hashCode();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: aload 0
invokevirtual org.apache.lucene.search.DisjunctionMaxQuery.classHash:()I
istore 1
start local 1 1: bipush 31
iload 1
imul
aload 0
getfield org.apache.lucene.search.DisjunctionMaxQuery.tieBreakerMultiplier:F
invokestatic java.lang.Float.floatToIntBits:(F)I
iadd
istore 1
2: bipush 31
iload 1
imul
aload 0
getfield org.apache.lucene.search.DisjunctionMaxQuery.disjuncts:[Lorg/apache/lucene/search/Query;
invokestatic java.util.Arrays.hashCode:([Ljava/lang/Object;)I
iadd
istore 1
3: iload 1
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/apache/lucene/search/DisjunctionMaxQuery;
1 4 1 h I
}
Signature: Lorg/apache/lucene/search/Query;Ljava/lang/Iterable<Lorg/apache/lucene/search/Query;>;
SourceFile: "DisjunctionMaxQuery.java"
NestMembers:
org.apache.lucene.search.DisjunctionMaxQuery$DisjunctionMaxWeight
InnerClasses:
public Occur = org.apache.lucene.search.BooleanClause$Occur of org.apache.lucene.search.BooleanClause
public Builder = org.apache.lucene.search.BooleanQuery$Builder of org.apache.lucene.search.BooleanQuery
protected DisjunctionMaxWeight = org.apache.lucene.search.DisjunctionMaxQuery$DisjunctionMaxWeight of org.apache.lucene.search.DisjunctionMaxQuery