final class reactor.core.publisher.FluxGenerate<T, S> extends reactor.core.publisher.Flux<T> implements reactor.core.Fuseable, reactor.core.publisher.SourceProducer<T>
minor version: 0
major version: 59
flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
this_class: reactor.core.publisher.FluxGenerate
super_class: reactor.core.publisher.Flux
{
static final java.util.concurrent.Callable EMPTY_CALLABLE;
descriptor: Ljava/util/concurrent/Callable;
flags: (0x0018) ACC_STATIC, ACC_FINAL
final java.util.concurrent.Callable<S> stateSupplier;
descriptor: Ljava/util/concurrent/Callable;
flags: (0x0010) ACC_FINAL
Signature: Ljava/util/concurrent/Callable<TS;>;
final java.util.function.BiFunction<S, reactor.core.publisher.SynchronousSink<T>, S> generator;
descriptor: Ljava/util/function/BiFunction;
flags: (0x0010) ACC_FINAL
Signature: Ljava/util/function/BiFunction<TS;Lreactor/core/publisher/SynchronousSink<TT;>;TS;>;
final java.util.function.Consumer<? super S> stateConsumer;
descriptor: Ljava/util/function/Consumer;
flags: (0x0010) ACC_FINAL
Signature: Ljava/util/function/Consumer<-TS;>;
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: invokedynamic call()Ljava/util/concurrent/Callable;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
()Ljava/lang/Object;
reactor/core/publisher/FluxGenerate.lambda$0()Ljava/lang/Object; (6)
()Ljava/lang/Object;
putstatic reactor.core.publisher.FluxGenerate.EMPTY_CALLABLE:Ljava/util/concurrent/Callable;
return
LocalVariableTable:
Start End Slot Name Signature
void <init>(java.util.function.Consumer<reactor.core.publisher.SynchronousSink<T>>);
descriptor: (Ljava/util/function/Consumer;)V
flags: (0x0000)
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getstatic reactor.core.publisher.FluxGenerate.EMPTY_CALLABLE:Ljava/util/concurrent/Callable;
aload 1
invokedynamic apply(Ljava/util/function/Consumer;)Ljava/util/function/BiFunction;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
reactor/core/publisher/FluxGenerate.lambda$1(Ljava/util/function/Consumer;Ljava/lang/Object;Lreactor/core/publisher/SynchronousSink;)Ljava/lang/Object; (6)
(Ljava/lang/Object;Lreactor/core/publisher/SynchronousSink;)Ljava/lang/Object;
invokespecial reactor.core.publisher.FluxGenerate.<init>:(Ljava/util/concurrent/Callable;Ljava/util/function/BiFunction;)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lreactor/core/publisher/FluxGenerate<TT;TS;>;
0 2 1 generator Ljava/util/function/Consumer<Lreactor/core/publisher/SynchronousSink<TT;>;>;
Signature: (Ljava/util/function/Consumer<Lreactor/core/publisher/SynchronousSink<TT;>;>;)V
MethodParameters:
Name Flags
generator
void <init>(java.util.concurrent.Callable<S>, java.util.function.BiFunction<S, reactor.core.publisher.SynchronousSink<T>, S>);
descriptor: (Ljava/util/concurrent/Callable;Ljava/util/function/BiFunction;)V
flags: (0x0000)
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
aload 2
invokedynamic accept()Ljava/util/function/Consumer;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;)V
reactor/core/publisher/FluxGenerate.lambda$2(Ljava/lang/Object;)V (6)
(Ljava/lang/Object;)V
invokespecial reactor.core.publisher.FluxGenerate.<init>:(Ljava/util/concurrent/Callable;Ljava/util/function/BiFunction;Ljava/util/function/Consumer;)V
1: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lreactor/core/publisher/FluxGenerate<TT;TS;>;
0 2 1 stateSupplier Ljava/util/concurrent/Callable<TS;>;
0 2 2 generator Ljava/util/function/BiFunction<TS;Lreactor/core/publisher/SynchronousSink<TT;>;TS;>;
Signature: (Ljava/util/concurrent/Callable<TS;>;Ljava/util/function/BiFunction<TS;Lreactor/core/publisher/SynchronousSink<TT;>;TS;>;)V
MethodParameters:
Name Flags
stateSupplier
generator
void <init>(java.util.concurrent.Callable<S>, java.util.function.BiFunction<S, reactor.core.publisher.SynchronousSink<T>, S>, java.util.function.Consumer<? super S>);
descriptor: (Ljava/util/concurrent/Callable;Ljava/util/function/BiFunction;Ljava/util/function/Consumer;)V
flags: (0x0000)
Code:
stack=3, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
invokespecial reactor.core.publisher.Flux.<init>:()V
1: aload 0
aload 1
ldc "stateSupplier"
invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
checkcast java.util.concurrent.Callable
putfield reactor.core.publisher.FluxGenerate.stateSupplier:Ljava/util/concurrent/Callable;
2: aload 0
aload 2
ldc "generator"
invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
checkcast java.util.function.BiFunction
putfield reactor.core.publisher.FluxGenerate.generator:Ljava/util/function/BiFunction;
3: aload 0
aload 3
ldc "stateConsumer"
invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
checkcast java.util.function.Consumer
putfield reactor.core.publisher.FluxGenerate.stateConsumer:Ljava/util/function/Consumer;
4: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lreactor/core/publisher/FluxGenerate<TT;TS;>;
0 5 1 stateSupplier Ljava/util/concurrent/Callable<TS;>;
0 5 2 generator Ljava/util/function/BiFunction<TS;Lreactor/core/publisher/SynchronousSink<TT;>;TS;>;
0 5 3 stateConsumer Ljava/util/function/Consumer<-TS;>;
Signature: (Ljava/util/concurrent/Callable<TS;>;Ljava/util/function/BiFunction<TS;Lreactor/core/publisher/SynchronousSink<TT;>;TS;>;Ljava/util/function/Consumer<-TS;>;)V
MethodParameters:
Name Flags
stateSupplier
generator
stateConsumer
public void subscribe(reactor.core.CoreSubscriber<? super T>);
descriptor: (Lreactor/core/CoreSubscriber;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=4, args_size=2
start local 0 start local 1 0: aload 0
getfield reactor.core.publisher.FluxGenerate.stateSupplier:Ljava/util/concurrent/Callable;
invokeinterface java.util.concurrent.Callable.call:()Ljava/lang/Object;
astore 2
start local 2 1: goto 5
end local 2 StackMap locals:
StackMap stack: java.lang.Throwable
2: astore 3
start local 3 3: aload 1
aload 3
aload 1
invokeinterface reactor.core.CoreSubscriber.currentContext:()Lreactor/util/context/Context;
invokestatic reactor.core.publisher.Operators.onOperatorError:(Ljava/lang/Throwable;Lreactor/util/context/Context;)Ljava/lang/Throwable;
invokestatic reactor.core.publisher.Operators.error:(Lorg/reactivestreams/Subscriber;Ljava/lang/Throwable;)V
4: return
end local 3 start local 2 5: StackMap locals: java.lang.Object
StackMap stack:
aload 1
new reactor.core.publisher.FluxGenerate$GenerateSubscription
dup
aload 1
aload 2
aload 0
getfield reactor.core.publisher.FluxGenerate.generator:Ljava/util/function/BiFunction;
aload 0
getfield reactor.core.publisher.FluxGenerate.stateConsumer:Ljava/util/function/Consumer;
invokespecial reactor.core.publisher.FluxGenerate$GenerateSubscription.<init>:(Lreactor/core/CoreSubscriber;Ljava/lang/Object;Ljava/util/function/BiFunction;Ljava/util/function/Consumer;)V
invokeinterface reactor.core.CoreSubscriber.onSubscribe:(Lorg/reactivestreams/Subscription;)V
6: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lreactor/core/publisher/FluxGenerate<TT;TS;>;
0 7 1 actual Lreactor/core/CoreSubscriber<-TT;>;
1 2 2 state TS;
5 7 2 state TS;
3 5 3 e Ljava/lang/Throwable;
Exception table:
from to target type
0 1 2 Class java.lang.Throwable
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 start local 1 0: aload 1
getstatic reactor.core.Scannable$Attr.RUN_STYLE:Lreactor/core/Scannable$Attr;
if_acmpne 1
getstatic reactor.core.Scannable$Attr$RunStyle.SYNC:Lreactor/core/Scannable$Attr$RunStyle;
areturn
1: StackMap locals:
StackMap stack:
aconst_null
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lreactor/core/publisher/FluxGenerate<TT;TS;>;
0 2 1 key Lreactor/core/Scannable$Attr;
MethodParameters:
Name Flags
key
private static java.lang.Object lambda$0();
descriptor: ()Ljava/lang/Object;
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=1, locals=0, args_size=0
0: aconst_null
areturn
LocalVariableTable:
Start End Slot Name Signature
Exceptions:
throws java.lang.Exception
private static java.lang.Object lambda$1(java.util.function.Consumer, java.lang.Object, reactor.core.publisher.SynchronousSink);
descriptor: (Ljava/util/function/Consumer;Ljava/lang/Object;Lreactor/core/publisher/SynchronousSink;)Ljava/lang/Object;
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=2, locals=3, args_size=3
start local 1 start local 2 0: aload 0
aload 2
invokeinterface java.util.function.Consumer.accept:(Ljava/lang/Object;)V
1: aconst_null
areturn
end local 2 end local 1 LocalVariableTable:
Start End Slot Name Signature
0 2 1 state TS;
0 2 2 sink Lreactor/core/publisher/SynchronousSink<TT;>;
private static void lambda$2(java.lang.Object);
descriptor: (Ljava/lang/Object;)V
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=0, locals=1, args_size=1
start local 0 0: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 s TS;
}
Signature: <T:Ljava/lang/Object;S:Ljava/lang/Object;>Lreactor/core/publisher/Flux<TT;>;Lreactor/core/Fuseable;Lreactor/core/publisher/SourceProducer<TT;>;
SourceFile: "FluxGenerate.java"
NestMembers:
reactor.core.publisher.FluxGenerate$GenerateSubscription
InnerClasses:
public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
public Attr = reactor.core.Scannable$Attr of reactor.core.Scannable
public final RunStyle = reactor.core.Scannable$Attr$RunStyle of reactor.core.Scannable$Attr
final GenerateSubscription = reactor.core.publisher.FluxGenerate$GenerateSubscription of reactor.core.publisher.FluxGenerate