final class reactor.core.publisher.FluxWindowTimeout$WindowTimeoutSubscriber<T> implements reactor.core.publisher.InnerOperator<T, reactor.core.publisher.Flux<T>>
minor version: 0
major version: 59
flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
this_class: reactor.core.publisher.FluxWindowTimeout$WindowTimeoutSubscriber
super_class: java.lang.Object
{
final reactor.core.CoreSubscriber<? super reactor.core.publisher.Flux<T>> actual;
descriptor: Lreactor/core/CoreSubscriber;
flags: (0x0010) ACC_FINAL
Signature: Lreactor/core/CoreSubscriber<-Lreactor/core/publisher/Flux<TT;>;>;
final long timespan;
descriptor: J
flags: (0x0010) ACC_FINAL
final java.util.concurrent.TimeUnit unit;
descriptor: Ljava/util/concurrent/TimeUnit;
flags: (0x0010) ACC_FINAL
final reactor.core.scheduler.Scheduler scheduler;
descriptor: Lreactor/core/scheduler/Scheduler;
flags: (0x0010) ACC_FINAL
final int maxSize;
descriptor: I
flags: (0x0010) ACC_FINAL
final reactor.core.scheduler.Scheduler$Worker worker;
descriptor: Lreactor/core/scheduler/Scheduler$Worker;
flags: (0x0010) ACC_FINAL
final java.util.Queue<java.lang.Object> queue;
descriptor: Ljava/util/Queue;
flags: (0x0010) ACC_FINAL
Signature: Ljava/util/Queue<Ljava/lang/Object;>;
java.lang.Throwable error;
descriptor: Ljava/lang/Throwable;
flags: (0x0000)
volatile boolean done;
descriptor: Z
flags: (0x0040) ACC_VOLATILE
volatile boolean cancelled;
descriptor: Z
flags: (0x0040) ACC_VOLATILE
volatile long requested;
descriptor: J
flags: (0x0040) ACC_VOLATILE
static final java.util.concurrent.atomic.AtomicLongFieldUpdater<reactor.core.publisher.FluxWindowTimeout$WindowTimeoutSubscriber> REQUESTED;
descriptor: Ljava/util/concurrent/atomic/AtomicLongFieldUpdater;
flags: (0x0018) ACC_STATIC, ACC_FINAL
Signature: Ljava/util/concurrent/atomic/AtomicLongFieldUpdater<Lreactor/core/publisher/FluxWindowTimeout$WindowTimeoutSubscriber;>;
volatile int wip;
descriptor: I
flags: (0x0040) ACC_VOLATILE
static final java.util.concurrent.atomic.AtomicIntegerFieldUpdater<reactor.core.publisher.FluxWindowTimeout$WindowTimeoutSubscriber> WIP;
descriptor: Ljava/util/concurrent/atomic/AtomicIntegerFieldUpdater;
flags: (0x0018) ACC_STATIC, ACC_FINAL
Signature: Ljava/util/concurrent/atomic/AtomicIntegerFieldUpdater<Lreactor/core/publisher/FluxWindowTimeout$WindowTimeoutSubscriber;>;
int count;
descriptor: I
flags: (0x0000)
long producerIndex;
descriptor: J
flags: (0x0000)
org.reactivestreams.Subscription s;
descriptor: Lorg/reactivestreams/Subscription;
flags: (0x0000)
reactor.core.publisher.Sinks$Many<T> window;
descriptor: Lreactor/core/publisher/Sinks$Many;
flags: (0x0000)
Signature: Lreactor/core/publisher/Sinks$Many<TT;>;
volatile boolean terminated;
descriptor: Z
flags: (0x0040) ACC_VOLATILE
volatile reactor.core.Disposable timer;
descriptor: Lreactor/core/Disposable;
flags: (0x0040) ACC_VOLATILE
static final java.util.concurrent.atomic.AtomicReferenceFieldUpdater<reactor.core.publisher.FluxWindowTimeout$WindowTimeoutSubscriber, reactor.core.Disposable> TIMER;
descriptor: Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;
flags: (0x0018) ACC_STATIC, ACC_FINAL
Signature: Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater<Lreactor/core/publisher/FluxWindowTimeout$WindowTimeoutSubscriber;Lreactor/core/Disposable;>;
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=3, locals=0, args_size=0
0: ldc Lreactor/core/publisher/FluxWindowTimeout$WindowTimeoutSubscriber;
1: ldc "requested"
2: invokestatic java.util.concurrent.atomic.AtomicLongFieldUpdater.newUpdater:(Ljava/lang/Class;Ljava/lang/String;)Ljava/util/concurrent/atomic/AtomicLongFieldUpdater;
3: putstatic reactor.core.publisher.FluxWindowTimeout$WindowTimeoutSubscriber.REQUESTED:Ljava/util/concurrent/atomic/AtomicLongFieldUpdater;
4: ldc Lreactor/core/publisher/FluxWindowTimeout$WindowTimeoutSubscriber;
5: ldc "wip"
6: invokestatic java.util.concurrent.atomic.AtomicIntegerFieldUpdater.newUpdater:(Ljava/lang/Class;Ljava/lang/String;)Ljava/util/concurrent/atomic/AtomicIntegerFieldUpdater;
7: putstatic reactor.core.publisher.FluxWindowTimeout$WindowTimeoutSubscriber.WIP:Ljava/util/concurrent/atomic/AtomicIntegerFieldUpdater;
8: ldc Lreactor/core/publisher/FluxWindowTimeout$WindowTimeoutSubscriber;
ldc Lreactor/core/Disposable;
ldc "timer"
invokestatic java.util.concurrent.atomic.AtomicReferenceFieldUpdater.newUpdater:(Ljava/lang/Class;Ljava/lang/Class;Ljava/lang/String;)Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;
9: putstatic reactor.core.publisher.FluxWindowTimeout$WindowTimeoutSubscriber.TIMER:Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;
10: return
LocalVariableTable:
Start End Slot Name Signature
void <init>(reactor.core.CoreSubscriber<? super reactor.core.publisher.Flux<T>>, int, long, java.util.concurrent.TimeUnit, reactor.core.scheduler.Scheduler);
descriptor: (Lreactor/core/CoreSubscriber;IJLjava/util/concurrent/TimeUnit;Lreactor/core/scheduler/Scheduler;)V
flags: (0x0000)
Code:
stack=3, locals=7, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 5 start local 6 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
aload 1
putfield reactor.core.publisher.FluxWindowTimeout$WindowTimeoutSubscriber.actual:Lreactor/core/CoreSubscriber;
2: aload 0
invokestatic reactor.util.concurrent.Queues.unboundedMultiproducer:()Ljava/util/function/Supplier;
invokeinterface java.util.function.Supplier.get:()Ljava/lang/Object;
checkcast java.util.Queue
putfield reactor.core.publisher.FluxWindowTimeout$WindowTimeoutSubscriber.queue:Ljava/util/Queue;
3: aload 0
lload 3
putfield reactor.core.publisher.FluxWindowTimeout$WindowTimeoutSubscriber.timespan:J
4: aload 0
aload 5
putfield reactor.core.publisher.FluxWindowTimeout$WindowTimeoutSubscriber.unit:Ljava/util/concurrent/TimeUnit;
5: aload 0
aload 6
putfield reactor.core.publisher.FluxWindowTimeout$WindowTimeoutSubscriber.scheduler:Lreactor/core/scheduler/Scheduler;
6: aload 0
iload 2
putfield reactor.core.publisher.FluxWindowTimeout$WindowTimeoutSubscriber.maxSize:I
7: aload 0
aload 6
invokeinterface reactor.core.scheduler.Scheduler.createWorker:()Lreactor/core/scheduler/Scheduler$Worker;
putfield reactor.core.publisher.FluxWindowTimeout$WindowTimeoutSubscriber.worker:Lreactor/core/scheduler/Scheduler$Worker;
8: return
end local 6 end local 5 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lreactor/core/publisher/FluxWindowTimeout$WindowTimeoutSubscriber<TT;>;
0 9 1 actual Lreactor/core/CoreSubscriber<-Lreactor/core/publisher/Flux<TT;>;>;
0 9 2 maxSize I
0 9 3 timespan J
0 9 5 unit Ljava/util/concurrent/TimeUnit;
0 9 6 scheduler Lreactor/core/scheduler/Scheduler;
Signature: (Lreactor/core/CoreSubscriber<-Lreactor/core/publisher/Flux<TT;>;>;IJLjava/util/concurrent/TimeUnit;Lreactor/core/scheduler/Scheduler;)V
MethodParameters:
Name Flags
actual
maxSize
timespan
unit
scheduler
public reactor.core.CoreSubscriber<? super reactor.core.publisher.Flux<T>> 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.FluxWindowTimeout$WindowTimeoutSubscriber.actual:Lreactor/core/CoreSubscriber;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lreactor/core/publisher/FluxWindowTimeout$WindowTimeoutSubscriber<TT;>;
Signature: ()Lreactor/core/CoreSubscriber<-Lreactor/core/publisher/Flux<TT;>;>;
public java.util.stream.Stream<? extends reactor.core.Scannable> inners();
descriptor: ()Ljava/util/stream/Stream;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=2, args_size=1
start local 0 0: aload 0
getfield reactor.core.publisher.FluxWindowTimeout$WindowTimeoutSubscriber.window:Lreactor/core/publisher/Sinks$Many;
astore 1
start local 1 1: aload 1
ifnonnull 2
invokestatic java.util.stream.Stream.empty:()Ljava/util/stream/Stream;
goto 3
StackMap locals: reactor.core.publisher.Sinks$Many
StackMap stack:
2: aload 1
invokestatic reactor.core.Scannable.from:(Ljava/lang/Object;)Lreactor/core/Scannable;
invokestatic java.util.stream.Stream.of:(Ljava/lang/Object;)Ljava/util/stream/Stream;
StackMap locals:
StackMap stack: java.util.stream.Stream
3: areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lreactor/core/publisher/FluxWindowTimeout$WindowTimeoutSubscriber<TT;>;
1 4 1 w Lreactor/core/publisher/Sinks$Many<TT;>;
Signature: ()Ljava/util/stream/Stream<+Lreactor/core/Scannable;>;
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.PARENT:Lreactor/core/Scannable$Attr;
if_acmpne 1
aload 0
getfield reactor.core.publisher.FluxWindowTimeout$WindowTimeoutSubscriber.s:Lorg/reactivestreams/Subscription;
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.FluxWindowTimeout$WindowTimeoutSubscriber.cancelled:Z
invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
areturn
2: StackMap locals:
StackMap stack:
aload 1
getstatic reactor.core.Scannable$Attr.TERMINATED:Lreactor/core/Scannable$Attr;
if_acmpne 3
aload 0
getfield reactor.core.publisher.FluxWindowTimeout$WindowTimeoutSubscriber.done:Z
invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
areturn
3: StackMap locals:
StackMap stack:
aload 1
getstatic reactor.core.Scannable$Attr.REQUESTED_FROM_DOWNSTREAM:Lreactor/core/Scannable$Attr;
if_acmpne 4
aload 0
getfield reactor.core.publisher.FluxWindowTimeout$WindowTimeoutSubscriber.requested:J
invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
areturn
4: StackMap locals:
StackMap stack:
aload 1
getstatic reactor.core.Scannable$Attr.CAPACITY:Lreactor/core/Scannable$Attr;
if_acmpne 5
aload 0
getfield reactor.core.publisher.FluxWindowTimeout$WindowTimeoutSubscriber.maxSize:I
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
areturn
5: StackMap locals:
StackMap stack:
aload 1
getstatic reactor.core.Scannable$Attr.BUFFERED:Lreactor/core/Scannable$Attr;
if_acmpne 6
aload 0
getfield reactor.core.publisher.FluxWindowTimeout$WindowTimeoutSubscriber.queue:Ljava/util/Queue;
invokeinterface java.util.Queue.size:()I
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
areturn
6: StackMap locals:
StackMap stack:
aload 1
getstatic reactor.core.Scannable$Attr.RUN_ON:Lreactor/core/Scannable$Attr;
if_acmpne 7
aload 0
getfield reactor.core.publisher.FluxWindowTimeout$WindowTimeoutSubscriber.worker:Lreactor/core/scheduler/Scheduler$Worker;
areturn
7: StackMap locals:
StackMap stack:
aload 1
getstatic reactor.core.Scannable$Attr.RUN_STYLE:Lreactor/core/Scannable$Attr;
if_acmpne 8
getstatic reactor.core.Scannable$Attr$RunStyle.ASYNC:Lreactor/core/Scannable$Attr$RunStyle;
areturn
8: 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 9 0 this Lreactor/core/publisher/FluxWindowTimeout$WindowTimeoutSubscriber<TT;>;
0 9 1 key Lreactor/core/Scannable$Attr;
MethodParameters:
Name Flags
key
public void onSubscribe(org.reactivestreams.Subscription);
descriptor: (Lorg/reactivestreams/Subscription;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=6, args_size=2
start local 0 start local 1 0: aload 0
getfield reactor.core.publisher.FluxWindowTimeout$WindowTimeoutSubscriber.s:Lorg/reactivestreams/Subscription;
aload 1
invokestatic reactor.core.publisher.Operators.validate:(Lorg/reactivestreams/Subscription;Lorg/reactivestreams/Subscription;)Z
ifeq 20
1: aload 0
aload 1
putfield reactor.core.publisher.FluxWindowTimeout$WindowTimeoutSubscriber.s:Lorg/reactivestreams/Subscription;
2: aload 0
getfield reactor.core.publisher.FluxWindowTimeout$WindowTimeoutSubscriber.actual:Lreactor/core/CoreSubscriber;
astore 2
start local 2 3: aload 2
aload 0
invokeinterface org.reactivestreams.Subscriber.onSubscribe:(Lorg/reactivestreams/Subscription;)V
4: aload 0
getfield reactor.core.publisher.FluxWindowTimeout$WindowTimeoutSubscriber.cancelled:Z
ifeq 6
5: return
6: StackMap locals: org.reactivestreams.Subscriber
StackMap stack:
invokestatic reactor.core.publisher.Sinks.unsafe:()Lreactor/core/publisher/Sinks$RootSpec;
invokeinterface reactor.core.publisher.Sinks$RootSpec.many:()Lreactor/core/publisher/Sinks$ManySpec;
invokeinterface reactor.core.publisher.Sinks$ManySpec.unicast:()Lreactor/core/publisher/Sinks$UnicastSpec;
invokeinterface reactor.core.publisher.Sinks$UnicastSpec.onBackpressureBuffer:()Lreactor/core/publisher/Sinks$Many;
astore 3
start local 3 7: aload 0
aload 3
putfield reactor.core.publisher.FluxWindowTimeout$WindowTimeoutSubscriber.window:Lreactor/core/publisher/Sinks$Many;
8: aload 0
getfield reactor.core.publisher.FluxWindowTimeout$WindowTimeoutSubscriber.requested:J
lstore 4
start local 4 9: lload 4
lconst_0
lcmp
ifeq 14
10: aload 2
aload 3
invokeinterface reactor.core.publisher.Sinks$Many.asFlux:()Lreactor/core/publisher/Flux;
invokeinterface org.reactivestreams.Subscriber.onNext:(Ljava/lang/Object;)V
11: lload 4
ldc 9223372036854775807
lcmp
ifeq 18
12: getstatic reactor.core.publisher.FluxWindowTimeout$WindowTimeoutSubscriber.REQUESTED:Ljava/util/concurrent/atomic/AtomicLongFieldUpdater;
aload 0
invokevirtual java.util.concurrent.atomic.AtomicLongFieldUpdater.decrementAndGet:(Ljava/lang/Object;)J
pop2
13: goto 18
14: StackMap locals: reactor.core.publisher.Sinks$Many long
StackMap stack:
aload 2
aload 1
15: invokestatic reactor.core.Exceptions.failWithOverflow:()Ljava/lang/IllegalStateException;
aload 0
getfield reactor.core.publisher.FluxWindowTimeout$WindowTimeoutSubscriber.actual:Lreactor/core/CoreSubscriber;
invokeinterface reactor.core.CoreSubscriber.currentContext:()Lreactor/util/context/Context;
16: invokestatic reactor.core.publisher.Operators.onOperatorError:(Lorg/reactivestreams/Subscription;Ljava/lang/Throwable;Lreactor/util/context/Context;)Ljava/lang/Throwable;
invokeinterface org.reactivestreams.Subscriber.onError:(Ljava/lang/Throwable;)V
17: return
18: StackMap locals:
StackMap stack:
getstatic reactor.core.publisher.FluxWindowTimeout$WindowTimeoutSubscriber.TIMER:Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;
aload 0
aload 0
invokevirtual reactor.core.publisher.FluxWindowTimeout$WindowTimeoutSubscriber.newPeriod:()Lreactor/core/Disposable;
invokestatic reactor.core.publisher.OperatorDisposables.replace:(Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;Ljava/lang/Object;Lreactor/core/Disposable;)Z
ifeq 20
19: aload 1
ldc 9223372036854775807
invokeinterface org.reactivestreams.Subscription.request:(J)V
end local 4 end local 3 end local 2 20: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 21 0 this Lreactor/core/publisher/FluxWindowTimeout$WindowTimeoutSubscriber<TT;>;
0 21 1 s Lorg/reactivestreams/Subscription;
3 20 2 a Lorg/reactivestreams/Subscriber<-Lreactor/core/publisher/Flux<TT;>;>;
7 20 3 w Lreactor/core/publisher/Sinks$Many<TT;>;
9 20 4 r J
MethodParameters:
Name Flags
s
reactor.core.Disposable newPeriod();
descriptor: ()Lreactor/core/Disposable;
flags: (0x0000)
Code:
stack=7, locals=2, args_size=1
start local 0 0: aload 0
getfield reactor.core.publisher.FluxWindowTimeout$WindowTimeoutSubscriber.worker:Lreactor/core/scheduler/Scheduler$Worker;
new reactor.core.publisher.FluxWindowTimeout$WindowTimeoutSubscriber$ConsumerIndexHolder
dup
aload 0
getfield reactor.core.publisher.FluxWindowTimeout$WindowTimeoutSubscriber.producerIndex:J
1: aload 0
invokespecial reactor.core.publisher.FluxWindowTimeout$WindowTimeoutSubscriber$ConsumerIndexHolder.<init>:(JLreactor/core/publisher/FluxWindowTimeout$WindowTimeoutSubscriber;)V
aload 0
getfield reactor.core.publisher.FluxWindowTimeout$WindowTimeoutSubscriber.timespan:J
aload 0
getfield reactor.core.publisher.FluxWindowTimeout$WindowTimeoutSubscriber.timespan:J
aload 0
getfield reactor.core.publisher.FluxWindowTimeout$WindowTimeoutSubscriber.unit:Ljava/util/concurrent/TimeUnit;
2: invokeinterface reactor.core.scheduler.Scheduler$Worker.schedulePeriodically:(Ljava/lang/Runnable;JJLjava/util/concurrent/TimeUnit;)Lreactor/core/Disposable;
3: areturn
4: StackMap locals:
StackMap stack: java.lang.Exception
astore 1
start local 1 5: aload 0
getfield reactor.core.publisher.FluxWindowTimeout$WindowTimeoutSubscriber.actual:Lreactor/core/CoreSubscriber;
aload 1
aload 0
getfield reactor.core.publisher.FluxWindowTimeout$WindowTimeoutSubscriber.s:Lorg/reactivestreams/Subscription;
aconst_null
aconst_null
aload 0
getfield reactor.core.publisher.FluxWindowTimeout$WindowTimeoutSubscriber.actual:Lreactor/core/CoreSubscriber;
invokeinterface reactor.core.CoreSubscriber.currentContext:()Lreactor/util/context/Context;
invokestatic reactor.core.publisher.Operators.onRejectedExecution:(Ljava/lang/Throwable;Lorg/reactivestreams/Subscription;Ljava/lang/Throwable;Ljava/lang/Object;Lreactor/util/context/Context;)Ljava/lang/RuntimeException;
invokeinterface reactor.core.CoreSubscriber.onError:(Ljava/lang/Throwable;)V
6: invokestatic reactor.core.Disposables.disposed:()Lreactor/core/Disposable;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lreactor/core/publisher/FluxWindowTimeout$WindowTimeoutSubscriber<TT;>;
5 7 1 e Ljava/lang/Exception;
Exception table:
from to target type
0 3 4 Class java.lang.Exception
public void onNext();
descriptor: (Ljava/lang/Object;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=8, args_size=2
start local 0 start local 1 0: aload 0
getfield reactor.core.publisher.FluxWindowTimeout$WindowTimeoutSubscriber.terminated:Z
ifeq 2
1: return
2: StackMap locals:
StackMap stack:
getstatic reactor.core.publisher.FluxWindowTimeout$WindowTimeoutSubscriber.WIP:Ljava/util/concurrent/atomic/AtomicIntegerFieldUpdater;
aload 0
invokevirtual java.util.concurrent.atomic.AtomicIntegerFieldUpdater.get:(Ljava/lang/Object;)I
ifne 34
getstatic reactor.core.publisher.FluxWindowTimeout$WindowTimeoutSubscriber.WIP:Ljava/util/concurrent/atomic/AtomicIntegerFieldUpdater;
aload 0
iconst_0
iconst_1
invokevirtual java.util.concurrent.atomic.AtomicIntegerFieldUpdater.compareAndSet:(Ljava/lang/Object;II)Z
ifeq 34
3: aload 0
getfield reactor.core.publisher.FluxWindowTimeout$WindowTimeoutSubscriber.window:Lreactor/core/publisher/Sinks$Many;
astore 2
start local 2 4: aload 2
aload 1
getstatic reactor.core.publisher.Sinks$EmitFailureHandler.FAIL_FAST:Lreactor/core/publisher/Sinks$EmitFailureHandler;
invokeinterface reactor.core.publisher.Sinks$Many.emitNext:(Ljava/lang/Object;Lreactor/core/publisher/Sinks$EmitFailureHandler;)V
5: aload 0
getfield reactor.core.publisher.FluxWindowTimeout$WindowTimeoutSubscriber.count:I
iconst_1
iadd
istore 3
start local 3 6: iload 3
aload 0
getfield reactor.core.publisher.FluxWindowTimeout$WindowTimeoutSubscriber.maxSize:I
if_icmplt 31
7: aload 0
dup
getfield reactor.core.publisher.FluxWindowTimeout$WindowTimeoutSubscriber.producerIndex:J
lconst_1
ladd
putfield reactor.core.publisher.FluxWindowTimeout$WindowTimeoutSubscriber.producerIndex:J
8: aload 0
iconst_0
putfield reactor.core.publisher.FluxWindowTimeout$WindowTimeoutSubscriber.count:I
9: aload 2
getstatic reactor.core.publisher.Sinks$EmitFailureHandler.FAIL_FAST:Lreactor/core/publisher/Sinks$EmitFailureHandler;
invokeinterface reactor.core.publisher.Sinks$Many.emitComplete:(Lreactor/core/publisher/Sinks$EmitFailureHandler;)V
10: aload 0
getfield reactor.core.publisher.FluxWindowTimeout$WindowTimeoutSubscriber.requested:J
lstore 4
start local 4 11: lload 4
lconst_0
lcmp
ifeq 23
12: invokestatic reactor.core.publisher.Sinks.unsafe:()Lreactor/core/publisher/Sinks$RootSpec;
invokeinterface reactor.core.publisher.Sinks$RootSpec.many:()Lreactor/core/publisher/Sinks$ManySpec;
invokeinterface reactor.core.publisher.Sinks$ManySpec.unicast:()Lreactor/core/publisher/Sinks$UnicastSpec;
invokeinterface reactor.core.publisher.Sinks$UnicastSpec.onBackpressureBuffer:()Lreactor/core/publisher/Sinks$Many;
astore 2
13: aload 0
aload 2
putfield reactor.core.publisher.FluxWindowTimeout$WindowTimeoutSubscriber.window:Lreactor/core/publisher/Sinks$Many;
14: aload 0
getfield reactor.core.publisher.FluxWindowTimeout$WindowTimeoutSubscriber.actual:Lreactor/core/CoreSubscriber;
aload 2
invokeinterface reactor.core.publisher.Sinks$Many.asFlux:()Lreactor/core/publisher/Flux;
invokeinterface reactor.core.CoreSubscriber.onNext:(Ljava/lang/Object;)V
15: lload 4
ldc 9223372036854775807
lcmp
ifeq 17
16: getstatic reactor.core.publisher.FluxWindowTimeout$WindowTimeoutSubscriber.REQUESTED:Ljava/util/concurrent/atomic/AtomicLongFieldUpdater;
aload 0
invokevirtual java.util.concurrent.atomic.AtomicLongFieldUpdater.decrementAndGet:(Ljava/lang/Object;)J
pop2
17: StackMap locals: reactor.core.publisher.Sinks$Many int long
StackMap stack:
aload 0
getfield reactor.core.publisher.FluxWindowTimeout$WindowTimeoutSubscriber.timer:Lreactor/core/Disposable;
astore 6
start local 6 18: aload 6
invokeinterface reactor.core.Disposable.dispose:()V
19: aload 0
invokevirtual reactor.core.publisher.FluxWindowTimeout$WindowTimeoutSubscriber.newPeriod:()Lreactor/core/Disposable;
astore 7
start local 7 20: getstatic reactor.core.publisher.FluxWindowTimeout$WindowTimeoutSubscriber.TIMER:Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;
aload 0
aload 6
aload 7
invokevirtual java.util.concurrent.atomic.AtomicReferenceFieldUpdater.compareAndSet:(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Z
ifne 32
21: aload 7
invokeinterface reactor.core.Disposable.dispose:()V
end local 7 end local 6 22: goto 32
23: StackMap locals:
StackMap stack:
aload 0
aconst_null
putfield reactor.core.publisher.FluxWindowTimeout$WindowTimeoutSubscriber.window:Lreactor/core/publisher/Sinks$Many;
24: aload 0
getfield reactor.core.publisher.FluxWindowTimeout$WindowTimeoutSubscriber.actual:Lreactor/core/CoreSubscriber;
aload 0
getfield reactor.core.publisher.FluxWindowTimeout$WindowTimeoutSubscriber.s:Lorg/reactivestreams/Subscription;
25: invokestatic reactor.core.Exceptions.failWithOverflow:()Ljava/lang/IllegalStateException;
aload 1
aload 0
getfield reactor.core.publisher.FluxWindowTimeout$WindowTimeoutSubscriber.actual:Lreactor/core/CoreSubscriber;
26: invokeinterface reactor.core.CoreSubscriber.currentContext:()Lreactor/util/context/Context;
27: invokestatic reactor.core.publisher.Operators.onOperatorError:(Lorg/reactivestreams/Subscription;Ljava/lang/Throwable;Ljava/lang/Object;Lreactor/util/context/Context;)Ljava/lang/Throwable;
invokeinterface reactor.core.CoreSubscriber.onError:(Ljava/lang/Throwable;)V
28: aload 0
getfield reactor.core.publisher.FluxWindowTimeout$WindowTimeoutSubscriber.timer:Lreactor/core/Disposable;
invokeinterface reactor.core.Disposable.dispose:()V
29: aload 0
getfield reactor.core.publisher.FluxWindowTimeout$WindowTimeoutSubscriber.worker:Lreactor/core/scheduler/Scheduler$Worker;
invokeinterface reactor.core.scheduler.Scheduler$Worker.dispose:()V
30: return
end local 4 31: StackMap locals:
StackMap stack:
aload 0
iload 3
putfield reactor.core.publisher.FluxWindowTimeout$WindowTimeoutSubscriber.count:I
32: StackMap locals:
StackMap stack:
getstatic reactor.core.publisher.FluxWindowTimeout$WindowTimeoutSubscriber.WIP:Ljava/util/concurrent/atomic/AtomicIntegerFieldUpdater;
aload 0
invokevirtual java.util.concurrent.atomic.AtomicIntegerFieldUpdater.decrementAndGet:(Ljava/lang/Object;)I
ifne 37
33: return
end local 3 end local 2 34: StackMap locals:
StackMap stack:
aload 0
getfield reactor.core.publisher.FluxWindowTimeout$WindowTimeoutSubscriber.queue:Ljava/util/Queue;
aload 1
invokeinterface java.util.Queue.offer:(Ljava/lang/Object;)Z
pop
35: aload 0
invokevirtual reactor.core.publisher.FluxWindowTimeout$WindowTimeoutSubscriber.enter:()Z
ifne 37
36: return
37: StackMap locals:
StackMap stack:
aload 0
invokevirtual reactor.core.publisher.FluxWindowTimeout$WindowTimeoutSubscriber.drainLoop:()V
38: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 39 0 this Lreactor/core/publisher/FluxWindowTimeout$WindowTimeoutSubscriber<TT;>;
0 39 1 t TT;
4 34 2 w Lreactor/core/publisher/Sinks$Many<TT;>;
6 34 3 c I
11 31 4 r J
18 22 6 tm Lreactor/core/Disposable;
20 22 7 task Lreactor/core/Disposable;
Signature: (TT;)V
MethodParameters:
Name Flags
t
public void onError(java.lang.Throwable);
descriptor: (Ljava/lang/Throwable;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
putfield reactor.core.publisher.FluxWindowTimeout$WindowTimeoutSubscriber.error:Ljava/lang/Throwable;
1: aload 0
iconst_1
putfield reactor.core.publisher.FluxWindowTimeout$WindowTimeoutSubscriber.done:Z
2: aload 0
invokevirtual reactor.core.publisher.FluxWindowTimeout$WindowTimeoutSubscriber.enter:()Z
ifeq 4
3: aload 0
invokevirtual reactor.core.publisher.FluxWindowTimeout$WindowTimeoutSubscriber.drainLoop:()V
4: StackMap locals:
StackMap stack:
aload 0
getfield reactor.core.publisher.FluxWindowTimeout$WindowTimeoutSubscriber.actual:Lreactor/core/CoreSubscriber;
aload 1
invokeinterface reactor.core.CoreSubscriber.onError:(Ljava/lang/Throwable;)V
5: aload 0
getfield reactor.core.publisher.FluxWindowTimeout$WindowTimeoutSubscriber.timer:Lreactor/core/Disposable;
invokeinterface reactor.core.Disposable.dispose:()V
6: aload 0
getfield reactor.core.publisher.FluxWindowTimeout$WindowTimeoutSubscriber.worker:Lreactor/core/scheduler/Scheduler$Worker;
invokeinterface reactor.core.scheduler.Scheduler$Worker.dispose:()V
7: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lreactor/core/publisher/FluxWindowTimeout$WindowTimeoutSubscriber<TT;>;
0 8 1 t Ljava/lang/Throwable;
MethodParameters:
Name Flags
t
public void onComplete();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
iconst_1
putfield reactor.core.publisher.FluxWindowTimeout$WindowTimeoutSubscriber.done:Z
1: aload 0
invokevirtual reactor.core.publisher.FluxWindowTimeout$WindowTimeoutSubscriber.enter:()Z
ifeq 3
2: aload 0
invokevirtual reactor.core.publisher.FluxWindowTimeout$WindowTimeoutSubscriber.drainLoop:()V
3: StackMap locals:
StackMap stack:
aload 0
getfield reactor.core.publisher.FluxWindowTimeout$WindowTimeoutSubscriber.actual:Lreactor/core/CoreSubscriber;
invokeinterface reactor.core.CoreSubscriber.onComplete:()V
4: aload 0
getfield reactor.core.publisher.FluxWindowTimeout$WindowTimeoutSubscriber.timer:Lreactor/core/Disposable;
invokeinterface reactor.core.Disposable.dispose:()V
5: aload 0
getfield reactor.core.publisher.FluxWindowTimeout$WindowTimeoutSubscriber.worker:Lreactor/core/scheduler/Scheduler$Worker;
invokeinterface reactor.core.scheduler.Scheduler$Worker.dispose:()V
6: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lreactor/core/publisher/FluxWindowTimeout$WindowTimeoutSubscriber<TT;>;
public void request(long);
descriptor: (J)V
flags: (0x0001) ACC_PUBLIC
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.FluxWindowTimeout$WindowTimeoutSubscriber.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/FluxWindowTimeout$WindowTimeoutSubscriber<TT;>;
0 3 1 n J
MethodParameters:
Name Flags
n
public void cancel();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
iconst_1
putfield reactor.core.publisher.FluxWindowTimeout$WindowTimeoutSubscriber.cancelled:Z
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lreactor/core/publisher/FluxWindowTimeout$WindowTimeoutSubscriber<TT;>;
void drainLoop();
descriptor: ()V
flags: (0x0000)
Code:
stack=5, locals=14, args_size=1
start local 0 0: aload 0
getfield reactor.core.publisher.FluxWindowTimeout$WindowTimeoutSubscriber.queue:Ljava/util/Queue;
astore 1
start local 1 1: aload 0
getfield reactor.core.publisher.FluxWindowTimeout$WindowTimeoutSubscriber.actual:Lreactor/core/CoreSubscriber;
astore 2
start local 2 2: aload 0
getfield reactor.core.publisher.FluxWindowTimeout$WindowTimeoutSubscriber.window:Lreactor/core/publisher/Sinks$Many;
astore 3
start local 3 3: iconst_1
istore 4
start local 4 4: StackMap locals: reactor.core.publisher.FluxWindowTimeout$WindowTimeoutSubscriber java.util.Queue org.reactivestreams.Subscriber reactor.core.publisher.Sinks$Many int
StackMap stack:
aload 0
getfield reactor.core.publisher.FluxWindowTimeout$WindowTimeoutSubscriber.terminated:Z
ifeq 10
5: aload 0
getfield reactor.core.publisher.FluxWindowTimeout$WindowTimeoutSubscriber.s:Lorg/reactivestreams/Subscription;
invokeinterface org.reactivestreams.Subscription.cancel:()V
6: aload 1
invokeinterface java.util.Queue.clear:()V
7: aload 0
getfield reactor.core.publisher.FluxWindowTimeout$WindowTimeoutSubscriber.timer:Lreactor/core/Disposable;
invokeinterface reactor.core.Disposable.dispose:()V
8: aload 0
getfield reactor.core.publisher.FluxWindowTimeout$WindowTimeoutSubscriber.worker:Lreactor/core/scheduler/Scheduler$Worker;
invokeinterface reactor.core.scheduler.Scheduler$Worker.dispose:()V
9: return
10: StackMap locals:
StackMap stack:
aload 0
getfield reactor.core.publisher.FluxWindowTimeout$WindowTimeoutSubscriber.done:Z
istore 5
start local 5 11: aload 1
invokeinterface java.util.Queue.poll:()Ljava/lang/Object;
astore 6
start local 6 12: aload 6
ifnonnull 13
iconst_1
goto 14
StackMap locals: int java.lang.Object
StackMap stack:
13: iconst_0
StackMap locals:
StackMap stack: int
14: istore 7
start local 7 15: aload 6
instanceof reactor.core.publisher.FluxWindowTimeout$WindowTimeoutSubscriber$ConsumerIndexHolder
istore 8
start local 8 16: iload 5
ifeq 27
iload 7
ifne 17
iload 8
ifeq 27
17: StackMap locals: int int
StackMap stack:
aload 0
aconst_null
putfield reactor.core.publisher.FluxWindowTimeout$WindowTimeoutSubscriber.window:Lreactor/core/publisher/Sinks$Many;
18: aload 1
invokeinterface java.util.Queue.clear:()V
19: aload 0
getfield reactor.core.publisher.FluxWindowTimeout$WindowTimeoutSubscriber.error:Ljava/lang/Throwable;
astore 9
start local 9 20: aload 9
ifnull 23
21: aload 3
aload 9
getstatic reactor.core.publisher.Sinks$EmitFailureHandler.FAIL_FAST:Lreactor/core/publisher/Sinks$EmitFailureHandler;
invokeinterface reactor.core.publisher.Sinks$Many.emitError:(Ljava/lang/Throwable;Lreactor/core/publisher/Sinks$EmitFailureHandler;)V
22: goto 24
23: StackMap locals: java.lang.Throwable
StackMap stack:
aload 3
getstatic reactor.core.publisher.Sinks$EmitFailureHandler.FAIL_FAST:Lreactor/core/publisher/Sinks$EmitFailureHandler;
invokeinterface reactor.core.publisher.Sinks$Many.emitComplete:(Lreactor/core/publisher/Sinks$EmitFailureHandler;)V
24: StackMap locals:
StackMap stack:
aload 0
getfield reactor.core.publisher.FluxWindowTimeout$WindowTimeoutSubscriber.timer:Lreactor/core/Disposable;
invokeinterface reactor.core.Disposable.dispose:()V
25: aload 0
getfield reactor.core.publisher.FluxWindowTimeout$WindowTimeoutSubscriber.worker:Lreactor/core/scheduler/Scheduler$Worker;
invokeinterface reactor.core.scheduler.Scheduler$Worker.dispose:()V
26: return
end local 9 27: StackMap locals:
StackMap stack:
iload 7
ifeq 29
28: goto 77
29: StackMap locals:
StackMap stack:
iload 8
ifeq 48
30: aload 3
getstatic reactor.core.publisher.Sinks$EmitFailureHandler.FAIL_FAST:Lreactor/core/publisher/Sinks$EmitFailureHandler;
invokeinterface reactor.core.publisher.Sinks$Many.emitComplete:(Lreactor/core/publisher/Sinks$EmitFailureHandler;)V
31: aload 0
iconst_0
putfield reactor.core.publisher.FluxWindowTimeout$WindowTimeoutSubscriber.count:I
32: invokestatic reactor.core.publisher.Sinks.unsafe:()Lreactor/core/publisher/Sinks$RootSpec;
invokeinterface reactor.core.publisher.Sinks$RootSpec.many:()Lreactor/core/publisher/Sinks$ManySpec;
invokeinterface reactor.core.publisher.Sinks$ManySpec.unicast:()Lreactor/core/publisher/Sinks$UnicastSpec;
invokeinterface reactor.core.publisher.Sinks$UnicastSpec.onBackpressureBuffer:()Lreactor/core/publisher/Sinks$Many;
astore 3
33: aload 0
aload 3
putfield reactor.core.publisher.FluxWindowTimeout$WindowTimeoutSubscriber.window:Lreactor/core/publisher/Sinks$Many;
34: aload 0
getfield reactor.core.publisher.FluxWindowTimeout$WindowTimeoutSubscriber.requested:J
lstore 9
start local 9 35: lload 9
lconst_0
lcmp
ifeq 40
36: aload 2
aload 3
invokeinterface reactor.core.publisher.Sinks$Many.asFlux:()Lreactor/core/publisher/Flux;
invokeinterface org.reactivestreams.Subscriber.onNext:(Ljava/lang/Object;)V
37: lload 9
ldc 9223372036854775807
lcmp
ifeq 4
38: getstatic reactor.core.publisher.FluxWindowTimeout$WindowTimeoutSubscriber.REQUESTED:Ljava/util/concurrent/atomic/AtomicLongFieldUpdater;
aload 0
invokevirtual java.util.concurrent.atomic.AtomicLongFieldUpdater.decrementAndGet:(Ljava/lang/Object;)J
pop2
39: goto 4
40: StackMap locals: long
StackMap stack:
aload 0
aconst_null
putfield reactor.core.publisher.FluxWindowTimeout$WindowTimeoutSubscriber.window:Lreactor/core/publisher/Sinks$Many;
41: aload 0
getfield reactor.core.publisher.FluxWindowTimeout$WindowTimeoutSubscriber.queue:Ljava/util/Queue;
invokeinterface java.util.Queue.clear:()V
42: aload 2
aload 0
getfield reactor.core.publisher.FluxWindowTimeout$WindowTimeoutSubscriber.s:Lorg/reactivestreams/Subscription;
43: invokestatic reactor.core.Exceptions.failWithOverflow:()Ljava/lang/IllegalStateException;
aload 0
getfield reactor.core.publisher.FluxWindowTimeout$WindowTimeoutSubscriber.actual:Lreactor/core/CoreSubscriber;
invokeinterface reactor.core.CoreSubscriber.currentContext:()Lreactor/util/context/Context;
44: invokestatic reactor.core.publisher.Operators.onOperatorError:(Lorg/reactivestreams/Subscription;Ljava/lang/Throwable;Lreactor/util/context/Context;)Ljava/lang/Throwable;
invokeinterface org.reactivestreams.Subscriber.onError:(Ljava/lang/Throwable;)V
45: aload 0
getfield reactor.core.publisher.FluxWindowTimeout$WindowTimeoutSubscriber.timer:Lreactor/core/Disposable;
invokeinterface reactor.core.Disposable.dispose:()V
46: aload 0
getfield reactor.core.publisher.FluxWindowTimeout$WindowTimeoutSubscriber.worker:Lreactor/core/scheduler/Scheduler$Worker;
invokeinterface reactor.core.scheduler.Scheduler$Worker.dispose:()V
47: return
end local 9 48: StackMap locals:
StackMap stack:
aload 3
aload 6
getstatic reactor.core.publisher.Sinks$EmitFailureHandler.FAIL_FAST:Lreactor/core/publisher/Sinks$EmitFailureHandler;
invokeinterface reactor.core.publisher.Sinks$Many.emitNext:(Ljava/lang/Object;Lreactor/core/publisher/Sinks$EmitFailureHandler;)V
49: aload 0
getfield reactor.core.publisher.FluxWindowTimeout$WindowTimeoutSubscriber.count:I
iconst_1
iadd
istore 9
start local 9 50: iload 9
aload 0
getfield reactor.core.publisher.FluxWindowTimeout$WindowTimeoutSubscriber.maxSize:I
if_icmplt 75
51: aload 0
dup
getfield reactor.core.publisher.FluxWindowTimeout$WindowTimeoutSubscriber.producerIndex:J
lconst_1
ladd
putfield reactor.core.publisher.FluxWindowTimeout$WindowTimeoutSubscriber.producerIndex:J
52: aload 0
iconst_0
putfield reactor.core.publisher.FluxWindowTimeout$WindowTimeoutSubscriber.count:I
53: aload 3
getstatic reactor.core.publisher.Sinks$EmitFailureHandler.FAIL_FAST:Lreactor/core/publisher/Sinks$EmitFailureHandler;
invokeinterface reactor.core.publisher.Sinks$Many.emitComplete:(Lreactor/core/publisher/Sinks$EmitFailureHandler;)V
54: aload 0
getfield reactor.core.publisher.FluxWindowTimeout$WindowTimeoutSubscriber.requested:J
lstore 10
start local 10 55: lload 10
lconst_0
lcmp
ifeq 67
56: invokestatic reactor.core.publisher.Sinks.unsafe:()Lreactor/core/publisher/Sinks$RootSpec;
invokeinterface reactor.core.publisher.Sinks$RootSpec.many:()Lreactor/core/publisher/Sinks$ManySpec;
invokeinterface reactor.core.publisher.Sinks$ManySpec.unicast:()Lreactor/core/publisher/Sinks$UnicastSpec;
invokeinterface reactor.core.publisher.Sinks$UnicastSpec.onBackpressureBuffer:()Lreactor/core/publisher/Sinks$Many;
astore 3
57: aload 0
aload 3
putfield reactor.core.publisher.FluxWindowTimeout$WindowTimeoutSubscriber.window:Lreactor/core/publisher/Sinks$Many;
58: aload 0
getfield reactor.core.publisher.FluxWindowTimeout$WindowTimeoutSubscriber.actual:Lreactor/core/CoreSubscriber;
aload 3
invokeinterface reactor.core.publisher.Sinks$Many.asFlux:()Lreactor/core/publisher/Flux;
invokeinterface reactor.core.CoreSubscriber.onNext:(Ljava/lang/Object;)V
59: lload 10
ldc 9223372036854775807
lcmp
ifeq 61
60: getstatic reactor.core.publisher.FluxWindowTimeout$WindowTimeoutSubscriber.REQUESTED:Ljava/util/concurrent/atomic/AtomicLongFieldUpdater;
aload 0
invokevirtual java.util.concurrent.atomic.AtomicLongFieldUpdater.decrementAndGet:(Ljava/lang/Object;)J
pop2
61: StackMap locals: int long
StackMap stack:
aload 0
getfield reactor.core.publisher.FluxWindowTimeout$WindowTimeoutSubscriber.timer:Lreactor/core/Disposable;
astore 12
start local 12 62: aload 12
invokeinterface reactor.core.Disposable.dispose:()V
63: aload 0
invokevirtual reactor.core.publisher.FluxWindowTimeout$WindowTimeoutSubscriber.newPeriod:()Lreactor/core/Disposable;
astore 13
start local 13 64: getstatic reactor.core.publisher.FluxWindowTimeout$WindowTimeoutSubscriber.TIMER:Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;
aload 0
aload 12
aload 13
invokevirtual java.util.concurrent.atomic.AtomicReferenceFieldUpdater.compareAndSet:(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Z
ifne 4
65: aload 13
invokeinterface reactor.core.Disposable.dispose:()V
end local 13 end local 12 66: goto 4
67: StackMap locals:
StackMap stack:
aload 0
aconst_null
putfield reactor.core.publisher.FluxWindowTimeout$WindowTimeoutSubscriber.window:Lreactor/core/publisher/Sinks$Many;
68: aload 2
aload 0
getfield reactor.core.publisher.FluxWindowTimeout$WindowTimeoutSubscriber.s:Lorg/reactivestreams/Subscription;
69: invokestatic reactor.core.Exceptions.failWithOverflow:()Ljava/lang/IllegalStateException;
aload 6
aload 0
getfield reactor.core.publisher.FluxWindowTimeout$WindowTimeoutSubscriber.actual:Lreactor/core/CoreSubscriber;
70: invokeinterface reactor.core.CoreSubscriber.currentContext:()Lreactor/util/context/Context;
71: invokestatic reactor.core.publisher.Operators.onOperatorError:(Lorg/reactivestreams/Subscription;Ljava/lang/Throwable;Ljava/lang/Object;Lreactor/util/context/Context;)Ljava/lang/Throwable;
invokeinterface org.reactivestreams.Subscriber.onError:(Ljava/lang/Throwable;)V
72: aload 0
getfield reactor.core.publisher.FluxWindowTimeout$WindowTimeoutSubscriber.timer:Lreactor/core/Disposable;
invokeinterface reactor.core.Disposable.dispose:()V
73: aload 0
getfield reactor.core.publisher.FluxWindowTimeout$WindowTimeoutSubscriber.worker:Lreactor/core/scheduler/Scheduler$Worker;
invokeinterface reactor.core.scheduler.Scheduler$Worker.dispose:()V
74: return
end local 10 75: StackMap locals:
StackMap stack:
aload 0
iload 9
putfield reactor.core.publisher.FluxWindowTimeout$WindowTimeoutSubscriber.count:I
end local 9 end local 8 end local 7 end local 6 end local 5 76: goto 4
77: StackMap locals: reactor.core.publisher.FluxWindowTimeout$WindowTimeoutSubscriber java.util.Queue org.reactivestreams.Subscriber reactor.core.publisher.Sinks$Many int
StackMap stack:
getstatic reactor.core.publisher.FluxWindowTimeout$WindowTimeoutSubscriber.WIP:Ljava/util/concurrent/atomic/AtomicIntegerFieldUpdater;
aload 0
iload 4
ineg
invokevirtual java.util.concurrent.atomic.AtomicIntegerFieldUpdater.addAndGet:(Ljava/lang/Object;I)I
istore 4
78: iload 4
ifne 4
79: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 80 0 this Lreactor/core/publisher/FluxWindowTimeout$WindowTimeoutSubscriber<TT;>;
1 80 1 q Ljava/util/Queue<Ljava/lang/Object;>;
2 80 2 a Lorg/reactivestreams/Subscriber<-Lreactor/core/publisher/Flux<TT;>;>;
3 80 3 w Lreactor/core/publisher/Sinks$Many<TT;>;
4 80 4 missed I
11 76 5 d Z
12 76 6 o Ljava/lang/Object;
15 76 7 empty Z
16 76 8 isHolder Z
20 27 9 err Ljava/lang/Throwable;
35 48 9 r J
50 76 9 c I
55 75 10 r J
62 66 12 tm Lreactor/core/Disposable;
64 66 13 task Lreactor/core/Disposable;
boolean enter();
descriptor: ()Z
flags: (0x0000)
Code:
stack=2, locals=1, args_size=1
start local 0 0: getstatic reactor.core.publisher.FluxWindowTimeout$WindowTimeoutSubscriber.WIP:Ljava/util/concurrent/atomic/AtomicIntegerFieldUpdater;
aload 0
invokevirtual java.util.concurrent.atomic.AtomicIntegerFieldUpdater.getAndIncrement:(Ljava/lang/Object;)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/FluxWindowTimeout$WindowTimeoutSubscriber<TT;>;
}
Signature: <T:Ljava/lang/Object;>Ljava/lang/Object;Lreactor/core/publisher/InnerOperator<TT;Lreactor/core/publisher/Flux<TT;>;>;
SourceFile: "FluxWindowTimeout.java"
NestHost: reactor.core.publisher.FluxWindowTimeout
InnerClasses:
public Attr = reactor.core.Scannable$Attr of reactor.core.Scannable
public final RunStyle = reactor.core.Scannable$Attr$RunStyle of reactor.core.Scannable$Attr
final WindowTimeoutSubscriber = reactor.core.publisher.FluxWindowTimeout$WindowTimeoutSubscriber of reactor.core.publisher.FluxWindowTimeout
final ConsumerIndexHolder = reactor.core.publisher.FluxWindowTimeout$WindowTimeoutSubscriber$ConsumerIndexHolder of reactor.core.publisher.FluxWindowTimeout$WindowTimeoutSubscriber
public abstract EmitFailureHandler = reactor.core.publisher.Sinks$EmitFailureHandler of reactor.core.publisher.Sinks
public abstract Many = reactor.core.publisher.Sinks$Many of reactor.core.publisher.Sinks
public abstract ManySpec = reactor.core.publisher.Sinks$ManySpec of reactor.core.publisher.Sinks
public abstract RootSpec = reactor.core.publisher.Sinks$RootSpec of reactor.core.publisher.Sinks
public abstract UnicastSpec = reactor.core.publisher.Sinks$UnicastSpec of reactor.core.publisher.Sinks
public abstract Worker = reactor.core.scheduler.Scheduler$Worker of reactor.core.scheduler.Scheduler