class org.apache.lucene.search.ConjunctionDISI$BitSetConjunctionDISI extends org.apache.lucene.search.DocIdSetIterator
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: org.apache.lucene.search.ConjunctionDISI$BitSetConjunctionDISI
  super_class: org.apache.lucene.search.DocIdSetIterator
{
  private final org.apache.lucene.search.DocIdSetIterator lead;
    descriptor: Lorg/apache/lucene/search/DocIdSetIterator;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final org.apache.lucene.util.BitSetIterator[] bitSetIterators;
    descriptor: [Lorg/apache/lucene/util/BitSetIterator;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final org.apache.lucene.util.BitSet[] bitSets;
    descriptor: [Lorg/apache/lucene/util/BitSet;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final int minLength;
    descriptor: I
    flags: (0x0012) ACC_PRIVATE, 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: .line 272
            ldc Lorg/apache/lucene/search/ConjunctionDISI;
            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.ConjunctionDISI$BitSetConjunctionDISI.$assertionsDisabled:Z
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  void <init>(org.apache.lucene.search.DocIdSetIterator, java.util.Collection<org.apache.lucene.util.BitSetIterator>);
    descriptor: (Lorg/apache/lucene/search/DocIdSetIterator;Ljava/util/Collection;)V
    flags: (0x0000) 
    Code:
      stack=3, locals=6, args_size=3
        start local 0 // org.apache.lucene.search.ConjunctionDISI$BitSetConjunctionDISI this
        start local 1 // org.apache.lucene.search.DocIdSetIterator lead
        start local 2 // java.util.Collection bitSetIterators
         0: .line 279
            aload 0 /* this */
            invokespecial org.apache.lucene.search.DocIdSetIterator.<init>:()V
         1: .line 280
            aload 0 /* this */
            aload 1 /* lead */
            putfield org.apache.lucene.search.ConjunctionDISI$BitSetConjunctionDISI.lead:Lorg/apache/lucene/search/DocIdSetIterator;
         2: .line 281
            getstatic org.apache.lucene.search.ConjunctionDISI$BitSetConjunctionDISI.$assertionsDisabled:Z
            ifne 3
            aload 2 /* bitSetIterators */
            invokeinterface java.util.Collection.size:()I
            ifgt 3
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         3: .line 283
      StackMap locals: org.apache.lucene.search.ConjunctionDISI$BitSetConjunctionDISI org.apache.lucene.search.DocIdSetIterator java.util.Collection
      StackMap stack:
            aload 0 /* this */
            aload 2 /* bitSetIterators */
            iconst_0
            anewarray org.apache.lucene.util.BitSetIterator
            invokeinterface java.util.Collection.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
            checkcast org.apache.lucene.util.BitSetIterator[]
            putfield org.apache.lucene.search.ConjunctionDISI$BitSetConjunctionDISI.bitSetIterators:[Lorg/apache/lucene/util/BitSetIterator;
         4: .line 285
            aload 0 /* this */
            getfield org.apache.lucene.search.ConjunctionDISI$BitSetConjunctionDISI.bitSetIterators:[Lorg/apache/lucene/util/BitSetIterator;
            invokedynamic compare()Ljava/util/Comparator;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;Ljava/lang/Object;)I
                  org/apache/lucene/search/ConjunctionDISI$BitSetConjunctionDISI.lambda$0(Lorg/apache/lucene/util/BitSetIterator;Lorg/apache/lucene/util/BitSetIterator;)I (6)
                  (Lorg/apache/lucene/util/BitSetIterator;Lorg/apache/lucene/util/BitSetIterator;)I
            invokestatic org.apache.lucene.util.ArrayUtil.timSort:([Ljava/lang/Object;Ljava/util/Comparator;)V
         5: .line 286
            aload 0 /* this */
            aload 0 /* this */
            getfield org.apache.lucene.search.ConjunctionDISI$BitSetConjunctionDISI.bitSetIterators:[Lorg/apache/lucene/util/BitSetIterator;
            arraylength
            anewarray org.apache.lucene.util.BitSet
            putfield org.apache.lucene.search.ConjunctionDISI$BitSetConjunctionDISI.bitSets:[Lorg/apache/lucene/util/BitSet;
         6: .line 287
            ldc 2147483647
            istore 3 /* minLen */
        start local 3 // int minLen
         7: .line 288
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         8: goto 13
         9: .line 289
      StackMap locals: int int
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.lucene.search.ConjunctionDISI$BitSetConjunctionDISI.bitSetIterators:[Lorg/apache/lucene/util/BitSetIterator;
            iload 4 /* i */
            aaload
            invokevirtual org.apache.lucene.util.BitSetIterator.getBitSet:()Lorg/apache/lucene/util/BitSet;
            astore 5 /* bitSet */
        start local 5 // org.apache.lucene.util.BitSet bitSet
        10: .line 290
            aload 0 /* this */
            getfield org.apache.lucene.search.ConjunctionDISI$BitSetConjunctionDISI.bitSets:[Lorg/apache/lucene/util/BitSet;
            iload 4 /* i */
            aload 5 /* bitSet */
            aastore
        11: .line 291
            iload 3 /* minLen */
            aload 5 /* bitSet */
            invokevirtual org.apache.lucene.util.BitSet.length:()I
            invokestatic java.lang.Math.min:(II)I
            istore 3 /* minLen */
        end local 5 // org.apache.lucene.util.BitSet bitSet
        12: .line 288
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
        13: iload 4 /* i */
            aload 0 /* this */
            getfield org.apache.lucene.search.ConjunctionDISI$BitSetConjunctionDISI.bitSetIterators:[Lorg/apache/lucene/util/BitSetIterator;
            arraylength
            if_icmplt 9
        end local 4 // int i
        14: .line 293
            aload 0 /* this */
            iload 3 /* minLen */
            putfield org.apache.lucene.search.ConjunctionDISI$BitSetConjunctionDISI.minLength:I
        15: .line 294
            return
        end local 3 // int minLen
        end local 2 // java.util.Collection bitSetIterators
        end local 1 // org.apache.lucene.search.DocIdSetIterator lead
        end local 0 // org.apache.lucene.search.ConjunctionDISI$BitSetConjunctionDISI this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   16     0             this  Lorg/apache/lucene/search/ConjunctionDISI$BitSetConjunctionDISI;
            0   16     1             lead  Lorg/apache/lucene/search/DocIdSetIterator;
            0   16     2  bitSetIterators  Ljava/util/Collection<Lorg/apache/lucene/util/BitSetIterator;>;
            7   16     3           minLen  I
            8   14     4                i  I
           10   12     5           bitSet  Lorg/apache/lucene/util/BitSet;
    Signature: (Lorg/apache/lucene/search/DocIdSetIterator;Ljava/util/Collection<Lorg/apache/lucene/util/BitSetIterator;>;)V
    MethodParameters:
                 Name  Flags
      lead             
      bitSetIterators  

  public int docID();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.lucene.search.ConjunctionDISI$BitSetConjunctionDISI this
         0: .line 298
            aload 0 /* this */
            getfield org.apache.lucene.search.ConjunctionDISI$BitSetConjunctionDISI.lead:Lorg/apache/lucene/search/DocIdSetIterator;
            invokevirtual org.apache.lucene.search.DocIdSetIterator.docID:()I
            ireturn
        end local 0 // org.apache.lucene.search.ConjunctionDISI$BitSetConjunctionDISI this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/lucene/search/ConjunctionDISI$BitSetConjunctionDISI;

  public int nextDoc();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.apache.lucene.search.ConjunctionDISI$BitSetConjunctionDISI this
         0: .line 303
            getstatic org.apache.lucene.search.ConjunctionDISI$BitSetConjunctionDISI.$assertionsDisabled:Z
            ifne 1
            aload 0 /* this */
            invokevirtual org.apache.lucene.search.ConjunctionDISI$BitSetConjunctionDISI.assertItersOnSameDoc:()Z
            ifne 1
            new java.lang.AssertionError
            dup
            ldc "Sub-iterators of ConjunctionDISI are not on the same document!"
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
         1: .line 304
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield org.apache.lucene.search.ConjunctionDISI$BitSetConjunctionDISI.lead:Lorg/apache/lucene/search/DocIdSetIterator;
            invokevirtual org.apache.lucene.search.DocIdSetIterator.nextDoc:()I
            invokevirtual org.apache.lucene.search.ConjunctionDISI$BitSetConjunctionDISI.doNext:(I)I
            ireturn
        end local 0 // org.apache.lucene.search.ConjunctionDISI$BitSetConjunctionDISI this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/apache/lucene/search/ConjunctionDISI$BitSetConjunctionDISI;
    Exceptions:
      throws java.io.IOException

  public int advance(int);
    descriptor: (I)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.apache.lucene.search.ConjunctionDISI$BitSetConjunctionDISI this
        start local 1 // int target
         0: .line 309
            getstatic org.apache.lucene.search.ConjunctionDISI$BitSetConjunctionDISI.$assertionsDisabled:Z
            ifne 1
            aload 0 /* this */
            invokevirtual org.apache.lucene.search.ConjunctionDISI$BitSetConjunctionDISI.assertItersOnSameDoc:()Z
            ifne 1
            new java.lang.AssertionError
            dup
            ldc "Sub-iterators of ConjunctionDISI are not on the same document!"
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
         1: .line 310
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield org.apache.lucene.search.ConjunctionDISI$BitSetConjunctionDISI.lead:Lorg/apache/lucene/search/DocIdSetIterator;
            iload 1 /* target */
            invokevirtual org.apache.lucene.search.DocIdSetIterator.advance:(I)I
            invokevirtual org.apache.lucene.search.ConjunctionDISI$BitSetConjunctionDISI.doNext:(I)I
            ireturn
        end local 1 // int target
        end local 0 // org.apache.lucene.search.ConjunctionDISI$BitSetConjunctionDISI this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    2     0    this  Lorg/apache/lucene/search/ConjunctionDISI$BitSetConjunctionDISI;
            0    2     1  target  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
        Name  Flags
      target  

  private int doNext(int);
    descriptor: (I)I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=6, args_size=2
        start local 0 // org.apache.lucene.search.ConjunctionDISI$BitSetConjunctionDISI this
        start local 1 // int doc
         0: .line 315
      StackMap locals:
      StackMap stack:
            iload 1 /* doc */
            aload 0 /* this */
            getfield org.apache.lucene.search.ConjunctionDISI$BitSetConjunctionDISI.minLength:I
            if_icmplt 2
         1: .line 316
            ldc 2147483647
            ireturn
         2: .line 318
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.lucene.search.ConjunctionDISI$BitSetConjunctionDISI.bitSets:[Lorg/apache/lucene/util/BitSet;
            dup
            astore 5
            arraylength
            istore 4
            iconst_0
            istore 3
            goto 7
      StackMap locals: org.apache.lucene.search.ConjunctionDISI$BitSetConjunctionDISI int top int int org.apache.lucene.util.BitSet[]
      StackMap stack:
         3: aload 5
            iload 3
            aaload
            astore 2 /* bitSet */
        start local 2 // org.apache.lucene.util.BitSet bitSet
         4: .line 319
            aload 2 /* bitSet */
            iload 1 /* doc */
            invokevirtual org.apache.lucene.util.BitSet.get:(I)Z
            ifne 6
         5: .line 320
            goto 14
        end local 2 // org.apache.lucene.util.BitSet bitSet
         6: .line 318
      StackMap locals:
      StackMap stack:
            iinc 3 1
      StackMap locals:
      StackMap stack:
         7: iload 3
            iload 4
            if_icmplt 3
         8: .line 323
            aload 0 /* this */
            getfield org.apache.lucene.search.ConjunctionDISI$BitSetConjunctionDISI.bitSetIterators:[Lorg/apache/lucene/util/BitSetIterator;
            dup
            astore 5
            arraylength
            istore 4
            iconst_0
            istore 3
            goto 12
      StackMap locals: org.apache.lucene.search.ConjunctionDISI$BitSetConjunctionDISI int top int int org.apache.lucene.util.BitSetIterator[]
      StackMap stack:
         9: aload 5
            iload 3
            aaload
            astore 2 /* iterator */
        start local 2 // org.apache.lucene.util.BitSetIterator iterator
        10: .line 324
            aload 2 /* iterator */
            iload 1 /* doc */
            invokevirtual org.apache.lucene.util.BitSetIterator.setDocId:(I)V
        end local 2 // org.apache.lucene.util.BitSetIterator iterator
        11: .line 323
            iinc 3 1
      StackMap locals:
      StackMap stack:
        12: iload 3
            iload 4
            if_icmplt 9
        13: .line 326
            iload 1 /* doc */
            ireturn
        14: .line 314
      StackMap locals: org.apache.lucene.search.ConjunctionDISI$BitSetConjunctionDISI int
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.lucene.search.ConjunctionDISI$BitSetConjunctionDISI.lead:Lorg/apache/lucene/search/DocIdSetIterator;
            invokevirtual org.apache.lucene.search.DocIdSetIterator.nextDoc:()I
            istore 1 /* doc */
            goto 0
        end local 1 // int doc
        end local 0 // org.apache.lucene.search.ConjunctionDISI$BitSetConjunctionDISI this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   15     0      this  Lorg/apache/lucene/search/ConjunctionDISI$BitSetConjunctionDISI;
            0   15     1       doc  I
            4    6     2    bitSet  Lorg/apache/lucene/util/BitSet;
           10   11     2  iterator  Lorg/apache/lucene/util/BitSetIterator;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      doc   

  public long cost();
    descriptor: ()J
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.apache.lucene.search.ConjunctionDISI$BitSetConjunctionDISI this
         0: .line 332
            aload 0 /* this */
            getfield org.apache.lucene.search.ConjunctionDISI$BitSetConjunctionDISI.lead:Lorg/apache/lucene/search/DocIdSetIterator;
            invokevirtual org.apache.lucene.search.DocIdSetIterator.cost:()J
            lreturn
        end local 0 // org.apache.lucene.search.ConjunctionDISI$BitSetConjunctionDISI this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/lucene/search/ConjunctionDISI$BitSetConjunctionDISI;

  private boolean assertItersOnSameDoc();
    descriptor: ()Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=4, args_size=1
        start local 0 // org.apache.lucene.search.ConjunctionDISI$BitSetConjunctionDISI this
         0: .line 337
            aload 0 /* this */
            getfield org.apache.lucene.search.ConjunctionDISI$BitSetConjunctionDISI.lead:Lorg/apache/lucene/search/DocIdSetIterator;
            invokevirtual org.apache.lucene.search.DocIdSetIterator.docID:()I
            istore 1 /* curDoc */
        start local 1 // int curDoc
         1: .line 338
            iconst_1
            istore 2 /* iteratorsOnTheSameDoc */
        start local 2 // boolean iteratorsOnTheSameDoc
         2: .line 339
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         3: goto 8
         4: .line 340
      StackMap locals: int int int
      StackMap stack:
            iload 2 /* iteratorsOnTheSameDoc */
            ifeq 5
            aload 0 /* this */
            getfield org.apache.lucene.search.ConjunctionDISI$BitSetConjunctionDISI.bitSetIterators:[Lorg/apache/lucene/util/BitSetIterator;
            iload 3 /* i */
            aaload
            invokevirtual org.apache.lucene.util.BitSetIterator.docID:()I
            iload 1 /* curDoc */
            if_icmpne 5
            iconst_1
            goto 6
      StackMap locals:
      StackMap stack:
         5: iconst_0
      StackMap locals:
      StackMap stack: int
         6: istore 2 /* iteratorsOnTheSameDoc */
         7: .line 339
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
         8: iload 3 /* i */
            aload 0 /* this */
            getfield org.apache.lucene.search.ConjunctionDISI$BitSetConjunctionDISI.bitSetIterators:[Lorg/apache/lucene/util/BitSetIterator;
            arraylength
            if_icmpge 9
            iload 2 /* iteratorsOnTheSameDoc */
            ifne 4
        end local 3 // int i
         9: .line 342
      StackMap locals:
      StackMap stack:
            iload 2 /* iteratorsOnTheSameDoc */
            ireturn
        end local 2 // boolean iteratorsOnTheSameDoc
        end local 1 // int curDoc
        end local 0 // org.apache.lucene.search.ConjunctionDISI$BitSetConjunctionDISI this
      LocalVariableTable:
        Start  End  Slot                   Name  Signature
            0   10     0                   this  Lorg/apache/lucene/search/ConjunctionDISI$BitSetConjunctionDISI;
            1   10     1                 curDoc  I
            2   10     2  iteratorsOnTheSameDoc  Z
            3    9     3                      i  I

  private static int lambda$0(org.apache.lucene.util.BitSetIterator, org.apache.lucene.util.BitSetIterator);
    descriptor: (Lorg/apache/lucene/util/BitSetIterator;Lorg/apache/lucene/util/BitSetIterator;)I
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.apache.lucene.util.BitSetIterator a
        start local 1 // org.apache.lucene.util.BitSetIterator b
         0: .line 285
            aload 0 /* a */
            invokevirtual org.apache.lucene.util.BitSetIterator.cost:()J
            aload 1 /* b */
            invokevirtual org.apache.lucene.util.BitSetIterator.cost:()J
            invokestatic java.lang.Long.compare:(JJ)I
            ireturn
        end local 1 // org.apache.lucene.util.BitSetIterator b
        end local 0 // org.apache.lucene.util.BitSetIterator a
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     a  Lorg/apache/lucene/util/BitSetIterator;
            0    1     1     b  Lorg/apache/lucene/util/BitSetIterator;
}
SourceFile: "ConjunctionDISI.java"
NestHost: org.apache.lucene.search.ConjunctionDISI
InnerClasses:
  public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
  private BitSetConjunctionDISI = org.apache.lucene.search.ConjunctionDISI$BitSetConjunctionDISI of org.apache.lucene.search.ConjunctionDISI