abstract class reactor.core.publisher.QueueDrainSubscriber<T, U, V> extends reactor.core.publisher.QueueDrainSubscriberPad4 implements reactor.core.publisher.InnerOperator<T, V>
minor version: 0
major version: 59
flags: flags: (0x0420) ACC_SUPER, ACC_ABSTRACT
this_class: reactor.core.publisher.QueueDrainSubscriber
super_class: reactor.core.publisher.QueueDrainSubscriberPad4
{
final reactor.core.CoreSubscriber<? super V> actual;
descriptor: Lreactor/core/CoreSubscriber;
flags: (0x0010) ACC_FINAL
Signature: Lreactor/core/CoreSubscriber<-TV;>;
final java.util.Queue<U> queue;
descriptor: Ljava/util/Queue;
flags: (0x0010) ACC_FINAL
Signature: Ljava/util/Queue<TU;>;
volatile boolean cancelled;
descriptor: Z
flags: (0x0040) ACC_VOLATILE
volatile boolean done;
descriptor: Z
flags: (0x0040) ACC_VOLATILE
java.lang.Throwable error;
descriptor: Ljava/lang/Throwable;
flags: (0x0000)
void <init>(reactor.core.CoreSubscriber<? super V>, java.util.Queue<U>);
descriptor: (Lreactor/core/CoreSubscriber;Ljava/util/Queue;)V
flags: (0x0000)
Code:
stack=2, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokespecial reactor.core.publisher.QueueDrainSubscriberPad4.<init>:()V
1: aload 0
aload 1
putfield reactor.core.publisher.QueueDrainSubscriber.actual:Lreactor/core/CoreSubscriber;
2: aload 0
aload 2
putfield reactor.core.publisher.QueueDrainSubscriber.queue:Ljava/util/Queue;
3: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lreactor/core/publisher/QueueDrainSubscriber<TT;TU;TV;>;
0 4 1 actual Lreactor/core/CoreSubscriber<-TV;>;
0 4 2 queue Ljava/util/Queue<TU;>;
Signature: (Lreactor/core/CoreSubscriber<-TV;>;Ljava/util/Queue<TU;>;)V
MethodParameters:
Name Flags
actual
queue
public reactor.core.CoreSubscriber<? super V> actual();
descriptor: ()Lreactor/core/CoreSubscriber;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield reactor.core.publisher.QueueDrainSubscriber.actual:Lreactor/core/CoreSubscriber;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lreactor/core/publisher/QueueDrainSubscriber<TT;TU;TV;>;
Signature: ()Lreactor/core/CoreSubscriber<-TV;>;
public final boolean cancelled();
descriptor: ()Z
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield reactor.core.publisher.QueueDrainSubscriber.cancelled:Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lreactor/core/publisher/QueueDrainSubscriber<TT;TU;TV;>;
public final boolean done();
descriptor: ()Z
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield reactor.core.publisher.QueueDrainSubscriber.done:Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lreactor/core/publisher/QueueDrainSubscriber<TT;TU;TV;>;
public final boolean enter();
descriptor: ()Z
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield reactor.core.publisher.QueueDrainSubscriber.wip:Ljava/util/concurrent/atomic/AtomicInteger;
invokevirtual java.util.concurrent.atomic.AtomicInteger.getAndIncrement:()I
ifne 1
iconst_1
ireturn
StackMap locals:
StackMap stack:
1: iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lreactor/core/publisher/QueueDrainSubscriber<TT;TU;TV;>;
public final boolean fastEnter();
descriptor: ()Z
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
getfield reactor.core.publisher.QueueDrainSubscriber.wip:Ljava/util/concurrent/atomic/AtomicInteger;
invokevirtual java.util.concurrent.atomic.AtomicInteger.get:()I
ifne 1
aload 0
getfield reactor.core.publisher.QueueDrainSubscriber.wip:Ljava/util/concurrent/atomic/AtomicInteger;
iconst_0
iconst_1
invokevirtual java.util.concurrent.atomic.AtomicInteger.compareAndSet:(II)Z
ifeq 1
iconst_1
ireturn
StackMap locals:
StackMap stack:
1: iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lreactor/core/publisher/QueueDrainSubscriber<TT;TU;TV;>;
protected final void fastPathEmitMax(U, boolean, reactor.core.Disposable);
descriptor: (Ljava/lang/Object;ZLreactor/core/Disposable;)V
flags: (0x0014) ACC_PROTECTED, ACC_FINAL
Code:
stack=5, locals=8, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
getfield reactor.core.publisher.QueueDrainSubscriber.actual:Lreactor/core/CoreSubscriber;
astore 4
start local 4 1: aload 0
getfield reactor.core.publisher.QueueDrainSubscriber.queue:Ljava/util/Queue;
astore 5
start local 5 2: aload 0
getfield reactor.core.publisher.QueueDrainSubscriber.wip:Ljava/util/concurrent/atomic/AtomicInteger;
invokevirtual java.util.concurrent.atomic.AtomicInteger.get:()I
ifne 13
aload 0
getfield reactor.core.publisher.QueueDrainSubscriber.wip:Ljava/util/concurrent/atomic/AtomicInteger;
iconst_0
iconst_1
invokevirtual java.util.concurrent.atomic.AtomicInteger.compareAndSet:(II)Z
ifeq 13
3: aload 0
getfield reactor.core.publisher.QueueDrainSubscriber.requested:J
lstore 6
start local 6 4: lload 6
lconst_0
lcmp
ifeq 10
5: aload 0
aload 4
aload 1
invokevirtual reactor.core.publisher.QueueDrainSubscriber.accept:(Lorg/reactivestreams/Subscriber;Ljava/lang/Object;)Z
ifeq 8
6: lload 6
ldc 9223372036854775807
lcmp
ifeq 8
7: aload 0
lconst_1
invokevirtual reactor.core.publisher.QueueDrainSubscriber.produced:(J)J
pop2
8: StackMap locals: org.reactivestreams.Subscriber java.util.Queue long
StackMap stack:
aload 0
iconst_m1
invokevirtual reactor.core.publisher.QueueDrainSubscriber.leave:(I)I
ifne 16
9: return
10: StackMap locals:
StackMap stack:
aload 3
invokeinterface reactor.core.Disposable.dispose:()V
11: aload 4
ldc "Could not emit buffer due to lack of requests"
invokestatic reactor.core.Exceptions.failWithOverflow:(Ljava/lang/String;)Ljava/lang/IllegalStateException;
invokeinterface org.reactivestreams.Subscriber.onError:(Ljava/lang/Throwable;)V
12: return
end local 6 13: StackMap locals:
StackMap stack:
aload 5
aload 1
invokeinterface java.util.Queue.offer:(Ljava/lang/Object;)Z
pop
14: aload 0
invokevirtual reactor.core.publisher.QueueDrainSubscriber.enter:()Z
ifne 16
15: return
16: StackMap locals:
StackMap stack:
aload 5
aload 4
iload 2
aload 3
aload 0
invokestatic reactor.core.publisher.QueueDrainSubscriber.drainMaxLoop:(Ljava/util/Queue;Lorg/reactivestreams/Subscriber;ZLreactor/core/Disposable;Lreactor/core/publisher/QueueDrainSubscriber;)V
17: return
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 18 0 this Lreactor/core/publisher/QueueDrainSubscriber<TT;TU;TV;>;
0 18 1 value TU;
0 18 2 delayError Z
0 18 3 dispose Lreactor/core/Disposable;
1 18 4 s Lorg/reactivestreams/Subscriber<-TV;>;
2 18 5 q Ljava/util/Queue<TU;>;
4 13 6 r J
Signature: (TU;ZLreactor/core/Disposable;)V
MethodParameters:
Name Flags
value
delayError
dispose
protected final void fastPathOrderedEmitMax(U, boolean, reactor.core.Disposable);
descriptor: (Ljava/lang/Object;ZLreactor/core/Disposable;)V
flags: (0x0014) ACC_PROTECTED, ACC_FINAL
Code:
stack=5, locals=8, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
getfield reactor.core.publisher.QueueDrainSubscriber.actual:Lreactor/core/CoreSubscriber;
astore 4
start local 4 1: aload 0
getfield reactor.core.publisher.QueueDrainSubscriber.queue:Ljava/util/Queue;
astore 5
start local 5 2: aload 0
getfield reactor.core.publisher.QueueDrainSubscriber.wip:Ljava/util/concurrent/atomic/AtomicInteger;
invokevirtual java.util.concurrent.atomic.AtomicInteger.get:()I
ifne 17
aload 0
getfield reactor.core.publisher.QueueDrainSubscriber.wip:Ljava/util/concurrent/atomic/AtomicInteger;
iconst_0
iconst_1
invokevirtual java.util.concurrent.atomic.AtomicInteger.compareAndSet:(II)Z
ifeq 17
3: aload 0
getfield reactor.core.publisher.QueueDrainSubscriber.requested:J
lstore 6
start local 6 4: lload 6
lconst_0
lcmp
ifeq 13
5: aload 5
invokeinterface java.util.Queue.isEmpty:()Z
ifeq 11
6: aload 0
aload 4
aload 1
invokevirtual reactor.core.publisher.QueueDrainSubscriber.accept:(Lorg/reactivestreams/Subscriber;Ljava/lang/Object;)Z
ifeq 9
7: lload 6
ldc 9223372036854775807
lcmp
ifeq 9
8: aload 0
lconst_1
invokevirtual reactor.core.publisher.QueueDrainSubscriber.produced:(J)J
pop2
9: StackMap locals: org.reactivestreams.Subscriber java.util.Queue long
StackMap stack:
aload 0
iconst_m1
invokevirtual reactor.core.publisher.QueueDrainSubscriber.leave:(I)I
ifne 20
10: return
11: StackMap locals:
StackMap stack:
aload 5
aload 1
invokeinterface java.util.Queue.offer:(Ljava/lang/Object;)Z
pop
12: goto 20
13: StackMap locals:
StackMap stack:
aload 0
iconst_1
putfield reactor.core.publisher.QueueDrainSubscriber.cancelled:Z
14: aload 3
invokeinterface reactor.core.Disposable.dispose:()V
15: aload 4
ldc "Could not emit buffer due to lack of requests"
invokestatic reactor.core.Exceptions.failWithOverflow:(Ljava/lang/String;)Ljava/lang/IllegalStateException;
invokeinterface org.reactivestreams.Subscriber.onError:(Ljava/lang/Throwable;)V
16: return
end local 6 17: StackMap locals:
StackMap stack:
aload 5
aload 1
invokeinterface java.util.Queue.offer:(Ljava/lang/Object;)Z
pop
18: aload 0
invokevirtual reactor.core.publisher.QueueDrainSubscriber.enter:()Z
ifne 20
19: return
20: StackMap locals:
StackMap stack:
aload 5
aload 4
iload 2
aload 3
aload 0
invokestatic reactor.core.publisher.QueueDrainSubscriber.drainMaxLoop:(Ljava/util/Queue;Lorg/reactivestreams/Subscriber;ZLreactor/core/Disposable;Lreactor/core/publisher/QueueDrainSubscriber;)V
21: return
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 22 0 this Lreactor/core/publisher/QueueDrainSubscriber<TT;TU;TV;>;
0 22 1 value TU;
0 22 2 delayError Z
0 22 3 dispose Lreactor/core/Disposable;
1 22 4 s Lorg/reactivestreams/Subscriber<-TV;>;
2 22 5 q Ljava/util/Queue<TU;>;
4 17 6 r J
Signature: (TU;ZLreactor/core/Disposable;)V
MethodParameters:
Name Flags
value
delayError
dispose
public boolean accept(org.reactivestreams.Subscriber<? super V>, );
descriptor: (Lorg/reactivestreams/Subscriber;Ljava/lang/Object;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=3, args_size=3
start local 0 start local 1 start local 2 0: iconst_0
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lreactor/core/publisher/QueueDrainSubscriber<TT;TU;TV;>;
0 1 1 a Lorg/reactivestreams/Subscriber<-TV;>;
0 1 2 v TU;
Signature: (Lorg/reactivestreams/Subscriber<-TV;>;TU;)Z
MethodParameters:
Name Flags
a
v
public final java.lang.Throwable error();
descriptor: ()Ljava/lang/Throwable;
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield reactor.core.publisher.QueueDrainSubscriber.error:Ljava/lang/Throwable;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lreactor/core/publisher/QueueDrainSubscriber<TT;TU;TV;>;
public final int leave(int);
descriptor: (I)I
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield reactor.core.publisher.QueueDrainSubscriber.wip:Ljava/util/concurrent/atomic/AtomicInteger;
iload 1
invokevirtual java.util.concurrent.atomic.AtomicInteger.addAndGet:(I)I
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lreactor/core/publisher/QueueDrainSubscriber<TT;TU;TV;>;
0 1 1 m I
MethodParameters:
Name Flags
m
public final long requested();
descriptor: ()J
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield reactor.core.publisher.QueueDrainSubscriber.requested:J
lreturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lreactor/core/publisher/QueueDrainSubscriber<TT;TU;TV;>;
public final long produced(long);
descriptor: (J)J
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=4, locals=3, args_size=2
start local 0 start local 1 0: getstatic reactor.core.publisher.QueueDrainSubscriber.REQUESTED:Ljava/util/concurrent/atomic/AtomicLongFieldUpdater;
aload 0
lload 1
lneg
invokevirtual java.util.concurrent.atomic.AtomicLongFieldUpdater.addAndGet:(Ljava/lang/Object;J)J
lreturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lreactor/core/publisher/QueueDrainSubscriber<TT;TU;TV;>;
0 1 1 n J
MethodParameters:
Name Flags
n
public final void requested(long);
descriptor: (J)V
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=4, locals=3, args_size=2
start local 0 start local 1 0: lload 1
invokestatic reactor.core.publisher.Operators.validate:(J)Z
ifeq 2
1: getstatic reactor.core.publisher.QueueDrainSubscriber.REQUESTED:Ljava/util/concurrent/atomic/AtomicLongFieldUpdater;
aload 0
lload 1
invokestatic reactor.core.publisher.Operators.addCap:(Ljava/util/concurrent/atomic/AtomicLongFieldUpdater;Ljava/lang/Object;J)J
pop2
2: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lreactor/core/publisher/QueueDrainSubscriber<TT;TU;TV;>;
0 3 1 n J
MethodParameters:
Name Flags
n
public java.lang.Object scanUnsafe(reactor.core.Scannable$Attr);
descriptor: (Lreactor/core/Scannable$Attr;)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 1
getstatic reactor.core.Scannable$Attr.TERMINATED:Lreactor/core/Scannable$Attr;
if_acmpne 1
aload 0
getfield reactor.core.publisher.QueueDrainSubscriber.done:Z
invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
areturn
1: StackMap locals:
StackMap stack:
aload 1
getstatic reactor.core.Scannable$Attr.CANCELLED:Lreactor/core/Scannable$Attr;
if_acmpne 2
aload 0
getfield reactor.core.publisher.QueueDrainSubscriber.cancelled:Z
invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
areturn
2: StackMap locals:
StackMap stack:
aload 1
getstatic reactor.core.Scannable$Attr.REQUESTED_FROM_DOWNSTREAM:Lreactor/core/Scannable$Attr;
if_acmpne 3
aload 0
getfield reactor.core.publisher.QueueDrainSubscriber.requested:J
invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
areturn
3: StackMap locals:
StackMap stack:
aload 1
getstatic reactor.core.Scannable$Attr.ERROR:Lreactor/core/Scannable$Attr;
if_acmpne 4
aload 0
getfield reactor.core.publisher.QueueDrainSubscriber.error:Ljava/lang/Throwable;
areturn
4: StackMap locals:
StackMap stack:
aload 0
aload 1
invokespecial reactor.core.publisher.InnerOperator.scanUnsafe:(Lreactor/core/Scannable$Attr;)Ljava/lang/Object;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lreactor/core/publisher/QueueDrainSubscriber<TT;TU;TV;>;
0 5 1 key Lreactor/core/Scannable$Attr;
RuntimeVisibleAnnotations:
reactor.util.annotation.Nullable()
MethodParameters:
Name Flags
key
static <Q, S> void drainMaxLoop(java.util.Queue<Q>, org.reactivestreams.Subscriber<? super S>, boolean, reactor.core.Disposable, reactor.core.publisher.QueueDrainSubscriber<?, Q, S>);
descriptor: (Ljava/util/Queue;Lorg/reactivestreams/Subscriber;ZLreactor/core/Disposable;Lreactor/core/publisher/QueueDrainSubscriber;)V
flags: (0x0008) ACC_STATIC
Code:
stack=6, locals=11, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: iconst_1
istore 5
start local 5 1: StackMap locals: int
StackMap stack:
aload 4
invokevirtual reactor.core.publisher.QueueDrainSubscriber.done:()Z
istore 6
start local 6 2: aload 0
invokeinterface java.util.Queue.poll:()Ljava/lang/Object;
astore 7
start local 7 3: aload 7
ifnonnull 4
iconst_1
goto 5
StackMap locals: int java.lang.Object
StackMap stack:
4: iconst_0
StackMap locals:
StackMap stack: int
5: istore 8
start local 8 6: iload 6
iload 8
aload 1
iload 2
aload 0
aload 4
invokestatic reactor.core.publisher.QueueDrainSubscriber.checkTerminated:(ZZLorg/reactivestreams/Subscriber;ZLjava/util/Queue;Lreactor/core/publisher/QueueDrainSubscriber;)Z
ifeq 10
7: aload 3
ifnull 9
8: aload 3
invokeinterface reactor.core.Disposable.dispose:()V
9: StackMap locals: int
StackMap stack:
return
10: StackMap locals:
StackMap stack:
iload 8
ifeq 12
11: goto 23
12: StackMap locals:
StackMap stack:
aload 4
invokevirtual reactor.core.publisher.QueueDrainSubscriber.requested:()J
lstore 9
start local 9 13: lload 9
lconst_0
lcmp
ifeq 18
14: aload 4
aload 1
aload 7
invokevirtual reactor.core.publisher.QueueDrainSubscriber.accept:(Lorg/reactivestreams/Subscriber;Ljava/lang/Object;)Z
ifeq 1
15: lload 9
ldc 9223372036854775807
lcmp
ifeq 1
16: aload 4
lconst_1
invokevirtual reactor.core.publisher.QueueDrainSubscriber.produced:(J)J
pop2
17: goto 1
18: StackMap locals: long
StackMap stack:
aload 0
invokeinterface java.util.Queue.clear:()V
19: aload 3
ifnull 21
20: aload 3
invokeinterface reactor.core.Disposable.dispose:()V
21: StackMap locals:
StackMap stack:
aload 1
ldc "Could not emit value due to lack of requests."
invokestatic reactor.core.Exceptions.failWithOverflow:(Ljava/lang/String;)Ljava/lang/IllegalStateException;
invokeinterface org.reactivestreams.Subscriber.onError:(Ljava/lang/Throwable;)V
22: return
end local 9 end local 8 end local 7 end local 6 23: StackMap locals: java.util.Queue org.reactivestreams.Subscriber int reactor.core.Disposable reactor.core.publisher.QueueDrainSubscriber int
StackMap stack:
aload 4
iload 5
ineg
invokevirtual reactor.core.publisher.QueueDrainSubscriber.leave:(I)I
istore 5
24: iload 5
ifne 1
25: return
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 26 0 q Ljava/util/Queue<TQ;>;
0 26 1 a Lorg/reactivestreams/Subscriber<-TS;>;
0 26 2 delayError Z
0 26 3 dispose Lreactor/core/Disposable;
0 26 4 qd Lreactor/core/publisher/QueueDrainSubscriber<*TQ;TS;>;
1 26 5 missed I
2 23 6 d Z
3 23 7 v TQ;
6 23 8 empty Z
13 23 9 r J
Signature: <Q:Ljava/lang/Object;S:Ljava/lang/Object;>(Ljava/util/Queue<TQ;>;Lorg/reactivestreams/Subscriber<-TS;>;ZLreactor/core/Disposable;Lreactor/core/publisher/QueueDrainSubscriber<*TQ;TS;>;)V
MethodParameters:
Name Flags
q
a
delayError
dispose
qd
static <Q, S> boolean checkTerminated(boolean, boolean, org.reactivestreams.Subscriber<?>, boolean, java.util.Queue<?>, reactor.core.publisher.QueueDrainSubscriber<?, Q, S>);
descriptor: (ZZLorg/reactivestreams/Subscriber;ZLjava/util/Queue;Lreactor/core/publisher/QueueDrainSubscriber;)Z
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=7, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: aload 5
invokevirtual reactor.core.publisher.QueueDrainSubscriber.cancelled:()Z
ifeq 3
1: aload 4
invokeinterface java.util.Queue.clear:()V
2: iconst_1
ireturn
3: StackMap locals:
StackMap stack:
iload 0
ifeq 20
4: iload 3
ifeq 12
5: iload 1
ifeq 20
6: aload 5
invokevirtual reactor.core.publisher.QueueDrainSubscriber.error:()Ljava/lang/Throwable;
astore 6
start local 6 7: aload 6
ifnull 10
8: aload 2
aload 6
invokeinterface org.reactivestreams.Subscriber.onError:(Ljava/lang/Throwable;)V
9: goto 11
10: StackMap locals: java.lang.Throwable
StackMap stack:
aload 2
invokeinterface org.reactivestreams.Subscriber.onComplete:()V
11: StackMap locals:
StackMap stack:
iconst_1
ireturn
end local 6 12: StackMap locals:
StackMap stack:
aload 5
invokevirtual reactor.core.publisher.QueueDrainSubscriber.error:()Ljava/lang/Throwable;
astore 6
start local 6 13: aload 6
ifnull 17
14: aload 4
invokeinterface java.util.Queue.clear:()V
15: aload 2
aload 6
invokeinterface org.reactivestreams.Subscriber.onError:(Ljava/lang/Throwable;)V
16: iconst_1
ireturn
17: StackMap locals: java.lang.Throwable
StackMap stack:
iload 1
ifeq 20
18: aload 2
invokeinterface org.reactivestreams.Subscriber.onComplete:()V
19: iconst_1
ireturn
end local 6 20: StackMap locals:
StackMap stack:
iconst_0
ireturn
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 21 0 d Z
0 21 1 empty Z
0 21 2 s Lorg/reactivestreams/Subscriber<*>;
0 21 3 delayError Z
0 21 4 q Ljava/util/Queue<*>;
0 21 5 qd Lreactor/core/publisher/QueueDrainSubscriber<*TQ;TS;>;
7 12 6 err Ljava/lang/Throwable;
13 20 6 err Ljava/lang/Throwable;
Signature: <Q:Ljava/lang/Object;S:Ljava/lang/Object;>(ZZLorg/reactivestreams/Subscriber<*>;ZLjava/util/Queue<*>;Lreactor/core/publisher/QueueDrainSubscriber<*TQ;TS;>;)Z
MethodParameters:
Name Flags
d
empty
s
delayError
q
qd
}
Signature: <T:Ljava/lang/Object;U:Ljava/lang/Object;V:Ljava/lang/Object;>Lreactor/core/publisher/QueueDrainSubscriberPad4;Lreactor/core/publisher/InnerOperator<TT;TV;>;
SourceFile: "QueueDrainSubscriber.java"
InnerClasses:
public Attr = reactor.core.Scannable$Attr of reactor.core.Scannable