public class org.apache.lucene.search.SynonymQuery$Builder
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.apache.lucene.search.SynonymQuery$Builder
  super_class: java.lang.Object
{
  private final java.lang.String field;
    descriptor: Ljava/lang/String;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final java.util.List<org.apache.lucene.search.SynonymQuery$TermAndBoost> terms;
    descriptor: Ljava/util/List;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/List<Lorg/apache/lucene/search/SynonymQuery$TermAndBoost;>;

  public void <init>(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.apache.lucene.search.SynonymQuery$Builder this
        start local 1 // java.lang.String field
         0: .line 72
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 65
            aload 0 /* this */
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            putfield org.apache.lucene.search.SynonymQuery$Builder.terms:Ljava/util/List;
         2: .line 73
            aload 0 /* this */
            aload 1 /* field */
            putfield org.apache.lucene.search.SynonymQuery$Builder.field:Ljava/lang/String;
         3: .line 74
            return
        end local 1 // java.lang.String field
        end local 0 // org.apache.lucene.search.SynonymQuery$Builder this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    4     0   this  Lorg/apache/lucene/search/SynonymQuery$Builder;
            0    4     1  field  Ljava/lang/String;
    MethodParameters:
       Name  Flags
      field  

  public org.apache.lucene.search.SynonymQuery$Builder addTerm(org.apache.lucene.index.Term);
    descriptor: (Lorg/apache/lucene/index/Term;)Lorg/apache/lucene/search/SynonymQuery$Builder;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.apache.lucene.search.SynonymQuery$Builder this
        start local 1 // org.apache.lucene.index.Term term
         0: .line 80
            aload 0 /* this */
            aload 1 /* term */
            fconst_1
            invokevirtual org.apache.lucene.search.SynonymQuery$Builder.addTerm:(Lorg/apache/lucene/index/Term;F)Lorg/apache/lucene/search/SynonymQuery$Builder;
            areturn
        end local 1 // org.apache.lucene.index.Term term
        end local 0 // org.apache.lucene.search.SynonymQuery$Builder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/lucene/search/SynonymQuery$Builder;
            0    1     1  term  Lorg/apache/lucene/index/Term;
    MethodParameters:
      Name  Flags
      term  

  public org.apache.lucene.search.SynonymQuery$Builder addTerm(org.apache.lucene.index.Term, float);
    descriptor: (Lorg/apache/lucene/index/Term;F)Lorg/apache/lucene/search/SynonymQuery$Builder;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // org.apache.lucene.search.SynonymQuery$Builder this
        start local 1 // org.apache.lucene.index.Term term
        start local 2 // float boost
         0: .line 88
            aload 0 /* this */
            getfield org.apache.lucene.search.SynonymQuery$Builder.field:Ljava/lang/String;
            aload 1 /* term */
            invokevirtual org.apache.lucene.index.Term.field:()Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 2
         1: .line 89
            new java.lang.IllegalArgumentException
            dup
            ldc "Synonyms must be across the same field"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 91
      StackMap locals:
      StackMap stack:
            fload 2 /* boost */
            invokestatic java.lang.Float.isNaN:(F)Z
            ifne 3
            fload 2 /* boost */
            fconst_0
            invokestatic java.lang.Float.compare:(FF)I
            ifle 3
            fload 2 /* boost */
            fconst_1
            invokestatic java.lang.Float.compare:(FF)I
            ifle 4
         3: .line 92
      StackMap locals:
      StackMap stack:
            new java.lang.IllegalArgumentException
            dup
            ldc "boost must be a positive float between 0 (exclusive) and 1 (inclusive)"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         4: .line 94
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.lucene.search.SynonymQuery$Builder.terms:Ljava/util/List;
            new org.apache.lucene.search.SynonymQuery$TermAndBoost
            dup
            aload 1 /* term */
            fload 2 /* boost */
            invokespecial org.apache.lucene.search.SynonymQuery$TermAndBoost.<init>:(Lorg/apache/lucene/index/Term;F)V
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
         5: .line 95
            aload 0 /* this */
            getfield org.apache.lucene.search.SynonymQuery$Builder.terms:Ljava/util/List;
            invokeinterface java.util.List.size:()I
            invokestatic org.apache.lucene.search.BooleanQuery.getMaxClauseCount:()I
            if_icmple 7
         6: .line 96
            new org.apache.lucene.search.BooleanQuery$TooManyClauses
            dup
            invokespecial org.apache.lucene.search.BooleanQuery$TooManyClauses.<init>:()V
            athrow
         7: .line 98
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            areturn
        end local 2 // float boost
        end local 1 // org.apache.lucene.index.Term term
        end local 0 // org.apache.lucene.search.SynonymQuery$Builder this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    8     0   this  Lorg/apache/lucene/search/SynonymQuery$Builder;
            0    8     1   term  Lorg/apache/lucene/index/Term;
            0    8     2  boost  F
    MethodParameters:
       Name  Flags
      term   
      boost  

  public org.apache.lucene.search.SynonymQuery build();
    descriptor: ()Lorg/apache/lucene/search/SynonymQuery;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // org.apache.lucene.search.SynonymQuery$Builder this
         0: .line 105
            aload 0 /* this */
            getfield org.apache.lucene.search.SynonymQuery$Builder.terms:Ljava/util/List;
            invokestatic java.util.Collections.sort:(Ljava/util/List;)V
         1: .line 106
            new org.apache.lucene.search.SynonymQuery
            dup
            aload 0 /* this */
            getfield org.apache.lucene.search.SynonymQuery$Builder.terms:Ljava/util/List;
            iconst_0
            anewarray org.apache.lucene.search.SynonymQuery$TermAndBoost
            invokeinterface java.util.List.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
            checkcast org.apache.lucene.search.SynonymQuery$TermAndBoost[]
            aload 0 /* this */
            getfield org.apache.lucene.search.SynonymQuery$Builder.field:Ljava/lang/String;
            invokespecial org.apache.lucene.search.SynonymQuery.<init>:([Lorg/apache/lucene/search/SynonymQuery$TermAndBoost;Ljava/lang/String;)V
            areturn
        end local 0 // org.apache.lucene.search.SynonymQuery$Builder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/apache/lucene/search/SynonymQuery$Builder;
}
SourceFile: "SynonymQuery.java"
NestHost: org.apache.lucene.search.SynonymQuery
InnerClasses:
  public TooManyClauses = org.apache.lucene.search.BooleanQuery$TooManyClauses of org.apache.lucene.search.BooleanQuery
  public Builder = org.apache.lucene.search.SynonymQuery$Builder of org.apache.lucene.search.SynonymQuery
  private TermAndBoost = org.apache.lucene.search.SynonymQuery$TermAndBoost of org.apache.lucene.search.SynonymQuery