final class reactor.core.publisher.MonoSubscribeOnValue<T> extends reactor.core.publisher.Mono<T> implements reactor.core.Scannable
minor version: 0
major version: 59
flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
this_class: reactor.core.publisher.MonoSubscribeOnValue
super_class: reactor.core.publisher.Mono
{
final T value;
descriptor: Ljava/lang/Object;
flags: (0x0010) ACC_FINAL
Signature: TT;
final reactor.core.scheduler.Scheduler scheduler;
descriptor: Lreactor/core/scheduler/Scheduler;
flags: (0x0010) ACC_FINAL
void <init>(T, reactor.core.scheduler.Scheduler);
descriptor: (Ljava/lang/Object;Lreactor/core/scheduler/Scheduler;)V
flags: (0x0000)
Code:
stack=3, locals=3, args_size=3
start local 0 // reactor.core.publisher.MonoSubscribeOnValue this
start local 1 // java.lang.Object value
start local 2 // reactor.core.scheduler.Scheduler scheduler
0: .line 40
aload 0 /* this */
invokespecial reactor.core.publisher.Mono.<init>:()V
1: .line 41
aload 0 /* this */
aload 1 /* value */
putfield reactor.core.publisher.MonoSubscribeOnValue.value:Ljava/lang/Object;
2: .line 42
aload 0 /* this */
aload 2 /* scheduler */
ldc "scheduler"
invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
checkcast reactor.core.scheduler.Scheduler
putfield reactor.core.publisher.MonoSubscribeOnValue.scheduler:Lreactor/core/scheduler/Scheduler;
3: .line 43
return
end local 2 // reactor.core.scheduler.Scheduler scheduler
end local 1 // java.lang.Object value
end local 0 // reactor.core.publisher.MonoSubscribeOnValue this
LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lreactor/core/publisher/MonoSubscribeOnValue<TT;>;
0 4 1 value TT;
0 4 2 scheduler Lreactor/core/scheduler/Scheduler;
Signature: (TT;Lreactor/core/scheduler/Scheduler;)V
RuntimeVisibleParameterAnnotations:
0:
reactor.util.annotation.Nullable()
1:
MethodParameters:
Name Flags
value
scheduler
public void subscribe(reactor.core.CoreSubscriber<? super T>);
descriptor: (Lreactor/core/CoreSubscriber;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=5, args_size=2
start local 0 // reactor.core.publisher.MonoSubscribeOnValue this
start local 1 // reactor.core.CoreSubscriber actual
0: .line 47
aload 0 /* this */
getfield reactor.core.publisher.MonoSubscribeOnValue.value:Ljava/lang/Object;
astore 2 /* v */
start local 2 // java.lang.Object v
1: .line 48
aload 2 /* v */
ifnonnull 12
2: .line 49
new reactor.core.publisher.FluxSubscribeOnValue$ScheduledEmpty
dup
aload 1 /* actual */
invokespecial reactor.core.publisher.FluxSubscribeOnValue$ScheduledEmpty.<init>:(Lorg/reactivestreams/Subscriber;)V
astore 3 /* parent */
start local 3 // reactor.core.publisher.FluxSubscribeOnValue$ScheduledEmpty parent
3: .line 50
aload 1 /* actual */
aload 3 /* parent */
invokeinterface reactor.core.CoreSubscriber.onSubscribe:(Lorg/reactivestreams/Subscription;)V
4: .line 52
aload 3 /* parent */
aload 0 /* this */
getfield reactor.core.publisher.MonoSubscribeOnValue.scheduler:Lreactor/core/scheduler/Scheduler;
aload 3 /* parent */
invokeinterface reactor.core.scheduler.Scheduler.schedule:(Ljava/lang/Runnable;)Lreactor/core/Disposable;
invokevirtual reactor.core.publisher.FluxSubscribeOnValue$ScheduledEmpty.setFuture:(Lreactor/core/Disposable;)V
5: .line 53
goto 13
6: .line 54
StackMap locals: reactor.core.publisher.MonoSubscribeOnValue reactor.core.CoreSubscriber java.lang.Object reactor.core.publisher.FluxSubscribeOnValue$ScheduledEmpty
StackMap stack: java.util.concurrent.RejectedExecutionException
astore 4 /* ree */
start local 4 // java.util.concurrent.RejectedExecutionException ree
7: .line 55
aload 3 /* parent */
getfield reactor.core.publisher.FluxSubscribeOnValue$ScheduledEmpty.future:Lreactor/core/Disposable;
getstatic reactor.core.publisher.OperatorDisposables.DISPOSED:Lreactor/core/Disposable;
if_acmpeq 13
8: .line 56
aload 1 /* actual */
aload 4 /* ree */
9: .line 57
aload 1 /* actual */
invokeinterface reactor.core.CoreSubscriber.currentContext:()Lreactor/util/context/Context;
10: .line 56
invokestatic reactor.core.publisher.Operators.onRejectedExecution:(Ljava/lang/Throwable;Lreactor/util/context/Context;)Ljava/lang/RuntimeException;
invokeinterface reactor.core.CoreSubscriber.onError:(Ljava/lang/Throwable;)V
end local 4 // java.util.concurrent.RejectedExecutionException ree
end local 3 // reactor.core.publisher.FluxSubscribeOnValue$ScheduledEmpty parent
11: .line 60
goto 13
12: .line 62
StackMap locals:
StackMap stack:
aload 1 /* actual */
new reactor.core.publisher.FluxSubscribeOnValue$ScheduledScalar
dup
aload 1 /* actual */
aload 2 /* v */
aload 0 /* this */
getfield reactor.core.publisher.MonoSubscribeOnValue.scheduler:Lreactor/core/scheduler/Scheduler;
invokespecial reactor.core.publisher.FluxSubscribeOnValue$ScheduledScalar.<init>:(Lreactor/core/CoreSubscriber;Ljava/lang/Object;Lreactor/core/scheduler/Scheduler;)V
invokeinterface reactor.core.CoreSubscriber.onSubscribe:(Lorg/reactivestreams/Subscription;)V
13: .line 64
StackMap locals:
StackMap stack:
return
end local 2 // java.lang.Object v
end local 1 // reactor.core.CoreSubscriber actual
end local 0 // reactor.core.publisher.MonoSubscribeOnValue this
LocalVariableTable:
Start End Slot Name Signature
0 14 0 this Lreactor/core/publisher/MonoSubscribeOnValue<TT;>;
0 14 1 actual Lreactor/core/CoreSubscriber<-TT;>;
1 14 2 v TT;
3 11 3 parent Lreactor/core/publisher/FluxSubscribeOnValue$ScheduledEmpty;
7 11 4 ree Ljava/util/concurrent/RejectedExecutionException;
Exception table:
from to target type
4 5 6 Class java.util.concurrent.RejectedExecutionException
Signature: (Lreactor/core/CoreSubscriber<-TT;>;)V
MethodParameters:
Name Flags
actual
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 // reactor.core.publisher.MonoSubscribeOnValue this
start local 1 // reactor.core.Scannable$Attr key
0: .line 68
aload 1 /* key */
getstatic reactor.core.Scannable$Attr.RUN_ON:Lreactor/core/Scannable$Attr;
if_acmpne 1
aload 0 /* this */
getfield reactor.core.publisher.MonoSubscribeOnValue.scheduler:Lreactor/core/scheduler/Scheduler;
areturn
1: .line 69
StackMap locals:
StackMap stack:
aload 1 /* key */
getstatic reactor.core.Scannable$Attr.RUN_STYLE:Lreactor/core/Scannable$Attr;
if_acmpne 2
getstatic reactor.core.Scannable$Attr$RunStyle.ASYNC:Lreactor/core/Scannable$Attr$RunStyle;
areturn
2: .line 71
StackMap locals:
StackMap stack:
aconst_null
areturn
end local 1 // reactor.core.Scannable$Attr key
end local 0 // reactor.core.publisher.MonoSubscribeOnValue this
LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lreactor/core/publisher/MonoSubscribeOnValue<TT;>;
0 3 1 key Lreactor/core/Scannable$Attr;
MethodParameters:
Name Flags
key
}
Signature: <T:Ljava/lang/Object;>Lreactor/core/publisher/Mono<TT;>;Lreactor/core/Scannable;
SourceFile: "MonoSubscribeOnValue.java"
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 ScheduledEmpty = reactor.core.publisher.FluxSubscribeOnValue$ScheduledEmpty of reactor.core.publisher.FluxSubscribeOnValue
final ScheduledScalar = reactor.core.publisher.FluxSubscribeOnValue$ScheduledScalar of reactor.core.publisher.FluxSubscribeOnValue