final class reactor.util.concurrent.MpscLinkedQueue<E> extends java.util.AbstractQueue<E> implements java.util.function.BiPredicate<E, E>
  minor version: 0
  major version: 59
  flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
  this_class: reactor.util.concurrent.MpscLinkedQueue
  super_class: java.util.AbstractQueue
{
  private volatile reactor.util.concurrent.MpscLinkedQueue$LinkedQueueNode<E> producerNode;
    descriptor: Lreactor/util/concurrent/MpscLinkedQueue$LinkedQueueNode;
    flags: (0x0042) ACC_PRIVATE, ACC_VOLATILE
    Signature: Lreactor/util/concurrent/MpscLinkedQueue$LinkedQueueNode<TE;>;

  private static final java.util.concurrent.atomic.AtomicReferenceFieldUpdater<reactor.util.concurrent.MpscLinkedQueue, reactor.util.concurrent.MpscLinkedQueue$LinkedQueueNode> PRODUCER_NODE_UPDATER;
    descriptor: Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Signature: Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater<Lreactor/util/concurrent/MpscLinkedQueue;Lreactor/util/concurrent/MpscLinkedQueue$LinkedQueueNode;>;

  private volatile reactor.util.concurrent.MpscLinkedQueue$LinkedQueueNode<E> consumerNode;
    descriptor: Lreactor/util/concurrent/MpscLinkedQueue$LinkedQueueNode;
    flags: (0x0042) ACC_PRIVATE, ACC_VOLATILE
    Signature: Lreactor/util/concurrent/MpscLinkedQueue$LinkedQueueNode<TE;>;

  private static final java.util.concurrent.atomic.AtomicReferenceFieldUpdater<reactor.util.concurrent.MpscLinkedQueue, reactor.util.concurrent.MpscLinkedQueue$LinkedQueueNode> CONSUMER_NODE_UPDATER;
    descriptor: Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Signature: Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater<Lreactor/util/concurrent/MpscLinkedQueue;Lreactor/util/concurrent/MpscLinkedQueue$LinkedQueueNode;>;

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=3, locals=0, args_size=0
         0: .line 39
            ldc Lreactor/util/concurrent/MpscLinkedQueue;
            ldc Lreactor/util/concurrent/MpscLinkedQueue$LinkedQueueNode;
            ldc "producerNode"
            invokestatic java.util.concurrent.atomic.AtomicReferenceFieldUpdater.newUpdater:(Ljava/lang/Class;Ljava/lang/Class;Ljava/lang/String;)Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;
         1: .line 38
            putstatic reactor.util.concurrent.MpscLinkedQueue.PRODUCER_NODE_UPDATER:Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;
         2: .line 43
            ldc Lreactor/util/concurrent/MpscLinkedQueue;
            ldc Lreactor/util/concurrent/MpscLinkedQueue$LinkedQueueNode;
            ldc "consumerNode"
            invokestatic java.util.concurrent.atomic.AtomicReferenceFieldUpdater.newUpdater:(Ljava/lang/Class;Ljava/lang/Class;Ljava/lang/String;)Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;
         3: .line 42
            putstatic reactor.util.concurrent.MpscLinkedQueue.CONSUMER_NODE_UPDATER:Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;
         4: .line 43
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // reactor.util.concurrent.MpscLinkedQueue this
         0: .line 45
            aload 0 /* this */
            invokespecial java.util.AbstractQueue.<init>:()V
         1: .line 46
            new reactor.util.concurrent.MpscLinkedQueue$LinkedQueueNode
            dup
            invokespecial reactor.util.concurrent.MpscLinkedQueue$LinkedQueueNode.<init>:()V
            astore 1 /* node */
        start local 1 // reactor.util.concurrent.MpscLinkedQueue$LinkedQueueNode node
         2: .line 47
            getstatic reactor.util.concurrent.MpscLinkedQueue.CONSUMER_NODE_UPDATER:Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;
            aload 0 /* this */
            aload 1 /* node */
            invokevirtual java.util.concurrent.atomic.AtomicReferenceFieldUpdater.lazySet:(Ljava/lang/Object;Ljava/lang/Object;)V
         3: .line 48
            getstatic reactor.util.concurrent.MpscLinkedQueue.PRODUCER_NODE_UPDATER:Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;
            aload 0 /* this */
            aload 1 /* node */
            invokevirtual java.util.concurrent.atomic.AtomicReferenceFieldUpdater.getAndSet:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         4: .line 50
            return
        end local 1 // reactor.util.concurrent.MpscLinkedQueue$LinkedQueueNode node
        end local 0 // reactor.util.concurrent.MpscLinkedQueue this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lreactor/util/concurrent/MpscLinkedQueue<TE;>;
            2    5     1  node  Lreactor/util/concurrent/MpscLinkedQueue$LinkedQueueNode<TE;>;

  public final boolean offer();
    descriptor: (Ljava/lang/Object;)Z
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=3, locals=4, args_size=2
        start local 0 // reactor.util.concurrent.MpscLinkedQueue this
        start local 1 // java.lang.Object e
         0: .line 71
            aload 1 /* e */
            ldc "The offered value 'e' must be non-null"
            invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
            pop
         1: .line 73
            new reactor.util.concurrent.MpscLinkedQueue$LinkedQueueNode
            dup
            aload 1 /* e */
            invokespecial reactor.util.concurrent.MpscLinkedQueue$LinkedQueueNode.<init>:(Ljava/lang/Object;)V
            astore 2 /* nextNode */
        start local 2 // reactor.util.concurrent.MpscLinkedQueue$LinkedQueueNode nextNode
         2: .line 74
            getstatic reactor.util.concurrent.MpscLinkedQueue.PRODUCER_NODE_UPDATER:Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;
            aload 0 /* this */
            aload 2 /* nextNode */
            invokevirtual java.util.concurrent.atomic.AtomicReferenceFieldUpdater.getAndSet:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            checkcast reactor.util.concurrent.MpscLinkedQueue$LinkedQueueNode
            astore 3 /* prevProducerNode */
        start local 3 // reactor.util.concurrent.MpscLinkedQueue$LinkedQueueNode prevProducerNode
         3: .line 77
            aload 3 /* prevProducerNode */
            aload 2 /* nextNode */
            invokevirtual reactor.util.concurrent.MpscLinkedQueue$LinkedQueueNode.soNext:(Lreactor/util/concurrent/MpscLinkedQueue$LinkedQueueNode;)V
         4: .line 78
            iconst_1
            ireturn
        end local 3 // reactor.util.concurrent.MpscLinkedQueue$LinkedQueueNode prevProducerNode
        end local 2 // reactor.util.concurrent.MpscLinkedQueue$LinkedQueueNode nextNode
        end local 1 // java.lang.Object e
        end local 0 // reactor.util.concurrent.MpscLinkedQueue this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    5     0              this  Lreactor/util/concurrent/MpscLinkedQueue<TE;>;
            0    5     1                 e  TE;
            2    5     2          nextNode  Lreactor/util/concurrent/MpscLinkedQueue$LinkedQueueNode<TE;>;
            3    5     3  prevProducerNode  Lreactor/util/concurrent/MpscLinkedQueue$LinkedQueueNode<TE;>;
    Signature: (TE;)Z
    MethodParameters:
      Name  Flags
      e     final

  public boolean test(E, );
    descriptor: (Ljava/lang/Object;Ljava/lang/Object;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=6, args_size=3
        start local 0 // reactor.util.concurrent.MpscLinkedQueue this
        start local 1 // java.lang.Object e1
        start local 2 // java.lang.Object e2
         0: .line 105
            aload 1 /* e1 */
            ldc "The offered value 'e1' must be non-null"
            invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
            pop
         1: .line 106
            aload 2 /* e2 */
            ldc "The offered value 'e2' must be non-null"
            invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
            pop
         2: .line 108
            new reactor.util.concurrent.MpscLinkedQueue$LinkedQueueNode
            dup
            aload 1 /* e1 */
            invokespecial reactor.util.concurrent.MpscLinkedQueue$LinkedQueueNode.<init>:(Ljava/lang/Object;)V
            astore 3 /* nextNode */
        start local 3 // reactor.util.concurrent.MpscLinkedQueue$LinkedQueueNode nextNode
         3: .line 109
            new reactor.util.concurrent.MpscLinkedQueue$LinkedQueueNode
            dup
            aload 2 /* e2 */
            invokespecial reactor.util.concurrent.MpscLinkedQueue$LinkedQueueNode.<init>:(Ljava/lang/Object;)V
            astore 4 /* nextNextNode */
        start local 4 // reactor.util.concurrent.MpscLinkedQueue$LinkedQueueNode nextNextNode
         4: .line 111
            getstatic reactor.util.concurrent.MpscLinkedQueue.PRODUCER_NODE_UPDATER:Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;
            aload 0 /* this */
            aload 4 /* nextNextNode */
            invokevirtual java.util.concurrent.atomic.AtomicReferenceFieldUpdater.getAndSet:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            checkcast reactor.util.concurrent.MpscLinkedQueue$LinkedQueueNode
            astore 5 /* prevProducerNode */
        start local 5 // reactor.util.concurrent.MpscLinkedQueue$LinkedQueueNode prevProducerNode
         5: .line 114
            aload 3 /* nextNode */
            aload 4 /* nextNextNode */
            invokevirtual reactor.util.concurrent.MpscLinkedQueue$LinkedQueueNode.soNext:(Lreactor/util/concurrent/MpscLinkedQueue$LinkedQueueNode;)V
         6: .line 115
            aload 5 /* prevProducerNode */
            aload 3 /* nextNode */
            invokevirtual reactor.util.concurrent.MpscLinkedQueue$LinkedQueueNode.soNext:(Lreactor/util/concurrent/MpscLinkedQueue$LinkedQueueNode;)V
         7: .line 117
            iconst_1
            ireturn
        end local 5 // reactor.util.concurrent.MpscLinkedQueue$LinkedQueueNode prevProducerNode
        end local 4 // reactor.util.concurrent.MpscLinkedQueue$LinkedQueueNode nextNextNode
        end local 3 // reactor.util.concurrent.MpscLinkedQueue$LinkedQueueNode nextNode
        end local 2 // java.lang.Object e2
        end local 1 // java.lang.Object e1
        end local 0 // reactor.util.concurrent.MpscLinkedQueue this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    8     0              this  Lreactor/util/concurrent/MpscLinkedQueue<TE;>;
            0    8     1                e1  TE;
            0    8     2                e2  TE;
            3    8     3          nextNode  Lreactor/util/concurrent/MpscLinkedQueue$LinkedQueueNode<TE;>;
            4    8     4      nextNextNode  Lreactor/util/concurrent/MpscLinkedQueue$LinkedQueueNode<TE;>;
            5    8     5  prevProducerNode  Lreactor/util/concurrent/MpscLinkedQueue$LinkedQueueNode<TE;>;
    Signature: (TE;TE;)Z
    MethodParameters:
      Name  Flags
      e1    
      e2    

  public E poll();
    descriptor: ()Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=1
        start local 0 // reactor.util.concurrent.MpscLinkedQueue this
         0: .line 139
            aload 0 /* this */
            getfield reactor.util.concurrent.MpscLinkedQueue.consumerNode:Lreactor/util/concurrent/MpscLinkedQueue$LinkedQueueNode;
            astore 1 /* currConsumerNode */
        start local 1 // reactor.util.concurrent.MpscLinkedQueue$LinkedQueueNode currConsumerNode
         1: .line 140
            aload 1 /* currConsumerNode */
            invokevirtual reactor.util.concurrent.MpscLinkedQueue$LinkedQueueNode.lvNext:()Lreactor/util/concurrent/MpscLinkedQueue$LinkedQueueNode;
            astore 2 /* nextNode */
        start local 2 // reactor.util.concurrent.MpscLinkedQueue$LinkedQueueNode nextNode
         2: .line 142
            aload 2 /* nextNode */
            ifnull 7
         3: .line 145
            aload 2 /* nextNode */
            invokevirtual reactor.util.concurrent.MpscLinkedQueue$LinkedQueueNode.getAndNullValue:()Ljava/lang/Object;
            astore 3 /* nextValue */
        start local 3 // java.lang.Object nextValue
         4: .line 150
            aload 1 /* currConsumerNode */
            aload 1 /* currConsumerNode */
            invokevirtual reactor.util.concurrent.MpscLinkedQueue$LinkedQueueNode.soNext:(Lreactor/util/concurrent/MpscLinkedQueue$LinkedQueueNode;)V
         5: .line 151
            getstatic reactor.util.concurrent.MpscLinkedQueue.CONSUMER_NODE_UPDATER:Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;
            aload 0 /* this */
            aload 2 /* nextNode */
            invokevirtual java.util.concurrent.atomic.AtomicReferenceFieldUpdater.lazySet:(Ljava/lang/Object;Ljava/lang/Object;)V
         6: .line 153
            aload 3 /* nextValue */
            areturn
        end local 3 // java.lang.Object nextValue
         7: .line 155
      StackMap locals: reactor.util.concurrent.MpscLinkedQueue$LinkedQueueNode reactor.util.concurrent.MpscLinkedQueue$LinkedQueueNode
      StackMap stack:
            aload 1 /* currConsumerNode */
            aload 0 /* this */
            getfield reactor.util.concurrent.MpscLinkedQueue.producerNode:Lreactor/util/concurrent/MpscLinkedQueue$LinkedQueueNode;
            if_acmpeq 13
         8: .line 157
      StackMap locals:
      StackMap stack:
            aload 1 /* currConsumerNode */
            invokevirtual reactor.util.concurrent.MpscLinkedQueue$LinkedQueueNode.lvNext:()Lreactor/util/concurrent/MpscLinkedQueue$LinkedQueueNode;
            dup
            astore 2 /* nextNode */
            ifnull 8
         9: .line 160
            aload 2 /* nextNode */
            invokevirtual reactor.util.concurrent.MpscLinkedQueue$LinkedQueueNode.getAndNullValue:()Ljava/lang/Object;
            astore 3 /* nextValue */
        start local 3 // java.lang.Object nextValue
        10: .line 165
            aload 1 /* currConsumerNode */
            aload 1 /* currConsumerNode */
            invokevirtual reactor.util.concurrent.MpscLinkedQueue$LinkedQueueNode.soNext:(Lreactor/util/concurrent/MpscLinkedQueue$LinkedQueueNode;)V
        11: .line 166
            getstatic reactor.util.concurrent.MpscLinkedQueue.CONSUMER_NODE_UPDATER:Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;
            aload 0 /* this */
            aload 2 /* nextNode */
            invokevirtual java.util.concurrent.atomic.AtomicReferenceFieldUpdater.lazySet:(Ljava/lang/Object;Ljava/lang/Object;)V
        12: .line 168
            aload 3 /* nextValue */
            areturn
        end local 3 // java.lang.Object nextValue
        13: .line 170
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        end local 2 // reactor.util.concurrent.MpscLinkedQueue$LinkedQueueNode nextNode
        end local 1 // reactor.util.concurrent.MpscLinkedQueue$LinkedQueueNode currConsumerNode
        end local 0 // reactor.util.concurrent.MpscLinkedQueue this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   14     0              this  Lreactor/util/concurrent/MpscLinkedQueue<TE;>;
            1   14     1  currConsumerNode  Lreactor/util/concurrent/MpscLinkedQueue$LinkedQueueNode<TE;>;
            2   14     2          nextNode  Lreactor/util/concurrent/MpscLinkedQueue$LinkedQueueNode<TE;>;
            4    7     3         nextValue  TE;
           10   13     3         nextValue  TE;
    Signature: ()TE;
    RuntimeVisibleAnnotations: 
      reactor.util.annotation.Nullable()

  public E peek();
    descriptor: ()Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=1
        start local 0 // reactor.util.concurrent.MpscLinkedQueue this
         0: .line 176
            aload 0 /* this */
            getfield reactor.util.concurrent.MpscLinkedQueue.consumerNode:Lreactor/util/concurrent/MpscLinkedQueue$LinkedQueueNode;
            astore 1 /* currConsumerNode */
        start local 1 // reactor.util.concurrent.MpscLinkedQueue$LinkedQueueNode currConsumerNode
         1: .line 177
            aload 1 /* currConsumerNode */
            invokevirtual reactor.util.concurrent.MpscLinkedQueue$LinkedQueueNode.lvNext:()Lreactor/util/concurrent/MpscLinkedQueue$LinkedQueueNode;
            astore 2 /* nextNode */
        start local 2 // reactor.util.concurrent.MpscLinkedQueue$LinkedQueueNode nextNode
         2: .line 179
            aload 2 /* nextNode */
            ifnull 4
         3: .line 181
            aload 2 /* nextNode */
            invokevirtual reactor.util.concurrent.MpscLinkedQueue$LinkedQueueNode.lpValue:()Ljava/lang/Object;
            areturn
         4: .line 183
      StackMap locals: reactor.util.concurrent.MpscLinkedQueue$LinkedQueueNode reactor.util.concurrent.MpscLinkedQueue$LinkedQueueNode
      StackMap stack:
            aload 1 /* currConsumerNode */
            aload 0 /* this */
            getfield reactor.util.concurrent.MpscLinkedQueue.producerNode:Lreactor/util/concurrent/MpscLinkedQueue$LinkedQueueNode;
            if_acmpeq 7
         5: .line 185
      StackMap locals:
      StackMap stack:
            aload 1 /* currConsumerNode */
            invokevirtual reactor.util.concurrent.MpscLinkedQueue$LinkedQueueNode.lvNext:()Lreactor/util/concurrent/MpscLinkedQueue$LinkedQueueNode;
            dup
            astore 2 /* nextNode */
            ifnull 5
         6: .line 187
            aload 2 /* nextNode */
            invokevirtual reactor.util.concurrent.MpscLinkedQueue$LinkedQueueNode.lpValue:()Ljava/lang/Object;
            areturn
         7: .line 190
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        end local 2 // reactor.util.concurrent.MpscLinkedQueue$LinkedQueueNode nextNode
        end local 1 // reactor.util.concurrent.MpscLinkedQueue$LinkedQueueNode currConsumerNode
        end local 0 // reactor.util.concurrent.MpscLinkedQueue this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    8     0              this  Lreactor/util/concurrent/MpscLinkedQueue<TE;>;
            1    8     1  currConsumerNode  Lreactor/util/concurrent/MpscLinkedQueue$LinkedQueueNode<TE;>;
            2    8     2          nextNode  Lreactor/util/concurrent/MpscLinkedQueue$LinkedQueueNode<TE;>;
    Signature: ()TE;
    RuntimeVisibleAnnotations: 
      reactor.util.annotation.Nullable()

  public boolean remove(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // reactor.util.concurrent.MpscLinkedQueue this
        start local 1 // java.lang.Object o
         0: .line 195
            new java.lang.UnsupportedOperationException
            dup
            invokespecial java.lang.UnsupportedOperationException.<init>:()V
            athrow
        end local 1 // java.lang.Object o
        end local 0 // reactor.util.concurrent.MpscLinkedQueue this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lreactor/util/concurrent/MpscLinkedQueue<TE;>;
            0    1     1     o  Ljava/lang/Object;
    MethodParameters:
      Name  Flags
      o     

  public void clear();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // reactor.util.concurrent.MpscLinkedQueue this
         0: .line 201
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual reactor.util.concurrent.MpscLinkedQueue.poll:()Ljava/lang/Object;
            ifnull 1
            aload 0 /* this */
            invokevirtual reactor.util.concurrent.MpscLinkedQueue.isEmpty:()Z
            ifeq 0
         1: .line 202
      StackMap locals:
      StackMap stack:
            return
        end local 0 // reactor.util.concurrent.MpscLinkedQueue this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lreactor/util/concurrent/MpscLinkedQueue<TE;>;

  public int size();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=5, args_size=1
        start local 0 // reactor.util.concurrent.MpscLinkedQueue this
         0: .line 208
            aload 0 /* this */
            getfield reactor.util.concurrent.MpscLinkedQueue.consumerNode:Lreactor/util/concurrent/MpscLinkedQueue$LinkedQueueNode;
            astore 1 /* chaserNode */
        start local 1 // reactor.util.concurrent.MpscLinkedQueue$LinkedQueueNode chaserNode
         1: .line 209
            aload 0 /* this */
            getfield reactor.util.concurrent.MpscLinkedQueue.producerNode:Lreactor/util/concurrent/MpscLinkedQueue$LinkedQueueNode;
            astore 2 /* producerNode */
        start local 2 // reactor.util.concurrent.MpscLinkedQueue$LinkedQueueNode producerNode
         2: .line 210
            iconst_0
            istore 3 /* size */
        start local 3 // int size
         3: .line 212
            goto 9
         4: .line 217
      StackMap locals: reactor.util.concurrent.MpscLinkedQueue$LinkedQueueNode reactor.util.concurrent.MpscLinkedQueue$LinkedQueueNode int
      StackMap stack:
            aload 1 /* chaserNode */
            invokevirtual reactor.util.concurrent.MpscLinkedQueue$LinkedQueueNode.lvNext:()Lreactor/util/concurrent/MpscLinkedQueue$LinkedQueueNode;
            astore 4 /* next */
        start local 4 // reactor.util.concurrent.MpscLinkedQueue$LinkedQueueNode next
         5: .line 219
            aload 4 /* next */
            aload 1 /* chaserNode */
            if_acmpne 7
         6: .line 221
            iload 3 /* size */
            ireturn
         7: .line 223
      StackMap locals: reactor.util.concurrent.MpscLinkedQueue$LinkedQueueNode
      StackMap stack:
            aload 4 /* next */
            astore 1 /* chaserNode */
         8: .line 224
            iinc 3 /* size */ 1
        end local 4 // reactor.util.concurrent.MpscLinkedQueue$LinkedQueueNode next
         9: .line 212
      StackMap locals:
      StackMap stack:
            aload 1 /* chaserNode */
            aload 2 /* producerNode */
            if_acmpeq 13
        10: .line 213
            aload 1 /* chaserNode */
            ifnull 13
        11: .line 214
            iload 3 /* size */
            ldc 2147483647
        12: .line 212
            if_icmplt 4
        13: .line 226
      StackMap locals:
      StackMap stack:
            iload 3 /* size */
            ireturn
        end local 3 // int size
        end local 2 // reactor.util.concurrent.MpscLinkedQueue$LinkedQueueNode producerNode
        end local 1 // reactor.util.concurrent.MpscLinkedQueue$LinkedQueueNode chaserNode
        end local 0 // reactor.util.concurrent.MpscLinkedQueue this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   14     0          this  Lreactor/util/concurrent/MpscLinkedQueue<TE;>;
            1   14     1    chaserNode  Lreactor/util/concurrent/MpscLinkedQueue$LinkedQueueNode<TE;>;
            2   14     2  producerNode  Lreactor/util/concurrent/MpscLinkedQueue$LinkedQueueNode<TE;>;
            3   14     3          size  I
            5    9     4          next  Lreactor/util/concurrent/MpscLinkedQueue$LinkedQueueNode<TE;>;

  public boolean isEmpty();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // reactor.util.concurrent.MpscLinkedQueue this
         0: .line 231
            aload 0 /* this */
            getfield reactor.util.concurrent.MpscLinkedQueue.consumerNode:Lreactor/util/concurrent/MpscLinkedQueue$LinkedQueueNode;
            aload 0 /* this */
            getfield reactor.util.concurrent.MpscLinkedQueue.producerNode:Lreactor/util/concurrent/MpscLinkedQueue$LinkedQueueNode;
            if_acmpne 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // reactor.util.concurrent.MpscLinkedQueue this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lreactor/util/concurrent/MpscLinkedQueue<TE;>;

  public java.util.Iterator<E> iterator();
    descriptor: ()Ljava/util/Iterator;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // reactor.util.concurrent.MpscLinkedQueue this
         0: .line 236
            new java.lang.UnsupportedOperationException
            dup
            invokespecial java.lang.UnsupportedOperationException.<init>:()V
            athrow
        end local 0 // reactor.util.concurrent.MpscLinkedQueue this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lreactor/util/concurrent/MpscLinkedQueue<TE;>;
    Signature: ()Ljava/util/Iterator<TE;>;
}
Signature: <E:Ljava/lang/Object;>Ljava/util/AbstractQueue<TE;>;Ljava/util/function/BiPredicate<TE;TE;>;
SourceFile: "MpscLinkedQueue.java"
NestMembers:
  reactor.util.concurrent.MpscLinkedQueue$LinkedQueueNode
InnerClasses:
  final LinkedQueueNode = reactor.util.concurrent.MpscLinkedQueue$LinkedQueueNode of reactor.util.concurrent.MpscLinkedQueue