final class reactor.core.publisher.MonoZip<T, R> extends reactor.core.publisher.Mono<R> implements reactor.core.publisher.SourceProducer<R>
minor version: 0
major version: 59
flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
this_class: reactor.core.publisher.MonoZip
super_class: reactor.core.publisher.Mono
{
final boolean delayError;
descriptor: Z
flags: (0x0010) ACC_FINAL
final org.reactivestreams.Publisher<?>[] sources;
descriptor: [Lorg/reactivestreams/Publisher;
flags: (0x0010) ACC_FINAL
Signature: [Lorg/reactivestreams/Publisher<*>;
final java.lang.Iterable<? extends org.reactivestreams.Publisher<?>> sourcesIterable;
descriptor: Ljava/lang/Iterable;
flags: (0x0010) ACC_FINAL
Signature: Ljava/lang/Iterable<+Lorg/reactivestreams/Publisher<*>;>;
final java.util.function.Function<? super java.lang.Object[], ? extends R> zipper;
descriptor: Ljava/util/function/Function;
flags: (0x0010) ACC_FINAL
Signature: Ljava/util/function/Function<-[Ljava/lang/Object;+TR;>;
<U> void <init>(boolean, org.reactivestreams.Publisher<? extends T>, org.reactivestreams.Publisher<? extends U>, java.util.function.BiFunction<? super T, ? super U, ? extends R>);
descriptor: (ZLorg/reactivestreams/Publisher;Lorg/reactivestreams/Publisher;Ljava/util/function/BiFunction;)V
flags: (0x0000)
Code:
stack=9, locals=5, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
iload 1
1: new reactor.core.publisher.FluxZip$PairwiseZipper
dup
iconst_1
anewarray java.util.function.BiFunction
dup
iconst_0
2: aload 4
ldc "zipper2"
invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
checkcast java.util.function.BiFunction
aastore
3: invokespecial reactor.core.publisher.FluxZip$PairwiseZipper.<init>:([Ljava/util/function/BiFunction;)V
iconst_2
anewarray org.reactivestreams.Publisher
dup
iconst_0
4: aload 2
ldc "p1"
invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
checkcast org.reactivestreams.Publisher
aastore
dup
iconst_1
5: aload 3
ldc "p2"
invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
checkcast org.reactivestreams.Publisher
aastore
invokespecial reactor.core.publisher.MonoZip.<init>:(ZLjava/util/function/Function;[Lorg/reactivestreams/Publisher;)V
6: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lreactor/core/publisher/MonoZip<TT;TR;>;
0 7 1 delayError Z
0 7 2 p1 Lorg/reactivestreams/Publisher<+TT;>;
0 7 3 p2 Lorg/reactivestreams/Publisher<+TU;>;
0 7 4 zipper2 Ljava/util/function/BiFunction<-TT;-TU;+TR;>;
Signature: <U:Ljava/lang/Object;>(ZLorg/reactivestreams/Publisher<+TT;>;Lorg/reactivestreams/Publisher<+TU;>;Ljava/util/function/BiFunction<-TT;-TU;+TR;>;)V
MethodParameters:
Name Flags
delayError
p1
p2
zipper2
void <init>(boolean, java.util.function.Function<? super java.lang.Object[], ? extends R>, org.reactivestreams.Publisher<?>[]);
descriptor: (ZLjava/util/function/Function;[Lorg/reactivestreams/Publisher;)V
flags: (0x0080) ACC_VARARGS
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.Mono.<init>:()V
1: aload 0
iload 1
putfield reactor.core.publisher.MonoZip.delayError:Z
2: aload 0
aload 2
ldc "zipper"
invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
checkcast java.util.function.Function
putfield reactor.core.publisher.MonoZip.zipper:Ljava/util/function/Function;
3: aload 0
aload 3
ldc "sources"
invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
checkcast org.reactivestreams.Publisher[]
putfield reactor.core.publisher.MonoZip.sources:[Lorg/reactivestreams/Publisher;
4: aload 0
aconst_null
putfield reactor.core.publisher.MonoZip.sourcesIterable:Ljava/lang/Iterable;
5: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lreactor/core/publisher/MonoZip<TT;TR;>;
0 6 1 delayError Z
0 6 2 zipper Ljava/util/function/Function<-[Ljava/lang/Object;+TR;>;
0 6 3 sources [Lorg/reactivestreams/Publisher;
Signature: (ZLjava/util/function/Function<-[Ljava/lang/Object;+TR;>;[Lorg/reactivestreams/Publisher<*>;)V
MethodParameters:
Name Flags
delayError
zipper
sources
void <init>(boolean, java.util.function.Function<? super java.lang.Object[], ? extends R>, java.lang.Iterable<? extends org.reactivestreams.Publisher<?>>);
descriptor: (ZLjava/util/function/Function;Ljava/lang/Iterable;)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.Mono.<init>:()V
1: aload 0
iload 1
putfield reactor.core.publisher.MonoZip.delayError:Z
2: aload 0
aload 2
ldc "zipper"
invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
checkcast java.util.function.Function
putfield reactor.core.publisher.MonoZip.zipper:Ljava/util/function/Function;
3: aload 0
aconst_null
putfield reactor.core.publisher.MonoZip.sources:[Lorg/reactivestreams/Publisher;
4: aload 0
aload 3
ldc "sourcesIterable"
invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
checkcast java.lang.Iterable
putfield reactor.core.publisher.MonoZip.sourcesIterable:Ljava/lang/Iterable;
5: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lreactor/core/publisher/MonoZip<TT;TR;>;
0 6 1 delayError Z
0 6 2 zipper Ljava/util/function/Function<-[Ljava/lang/Object;+TR;>;
0 6 3 sourcesIterable Ljava/lang/Iterable<+Lorg/reactivestreams/Publisher<*>;>;
Signature: (ZLjava/util/function/Function<-[Ljava/lang/Object;+TR;>;Ljava/lang/Iterable<+Lorg/reactivestreams/Publisher<*>;>;)V
MethodParameters:
Name Flags
delayError
zipper
sourcesIterable
reactor.core.publisher.Mono<R> zipAdditionalSource(org.reactivestreams.Publisher, java.util.function.BiFunction);
descriptor: (Lorg/reactivestreams/Publisher;Ljava/util/function/BiFunction;)Lreactor/core/publisher/Mono;
flags: (0x0000)
Code:
stack=5, locals=7, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield reactor.core.publisher.MonoZip.sources:[Lorg/reactivestreams/Publisher;
astore 3
start local 3 1: aload 3
ifnull 9
aload 0
getfield reactor.core.publisher.MonoZip.zipper:Ljava/util/function/Function;
instanceof reactor.core.publisher.FluxZip$PairwiseZipper
ifeq 9
2: aload 3
arraylength
istore 4
start local 4 3: iload 4
iconst_1
iadd
anewarray org.reactivestreams.Publisher
astore 5
start local 5 4: aload 3
iconst_0
aload 5
iconst_0
iload 4
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
5: aload 5
iload 4
aload 1
aastore
6: aload 0
getfield reactor.core.publisher.MonoZip.zipper:Ljava/util/function/Function;
checkcast reactor.core.publisher.FluxZip$PairwiseZipper
aload 2
invokevirtual reactor.core.publisher.FluxZip$PairwiseZipper.then:(Ljava/util/function/BiFunction;)Lreactor/core/publisher/FluxZip$PairwiseZipper;
7: astore 6
start local 6 8: new reactor.core.publisher.MonoZip
dup
aload 0
getfield reactor.core.publisher.MonoZip.delayError:Z
aload 6
aload 5
invokespecial reactor.core.publisher.MonoZip.<init>:(ZLjava/util/function/Function;[Lorg/reactivestreams/Publisher;)V
areturn
end local 6 end local 5 end local 4 9: StackMap locals: org.reactivestreams.Publisher[]
StackMap stack:
aconst_null
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lreactor/core/publisher/MonoZip<TT;TR;>;
0 10 1 source Lorg/reactivestreams/Publisher;
0 10 2 zipper Ljava/util/function/BiFunction;
1 10 3 oldSources [Lorg/reactivestreams/Publisher;
3 9 4 oldLen I
4 9 5 newSources [Lorg/reactivestreams/Publisher;
8 9 6 z Ljava/util/function/Function<[Ljava/lang/Object;TR;>;
Signature: (Lorg/reactivestreams/Publisher;Ljava/util/function/BiFunction;)Lreactor/core/publisher/Mono<TR;>;
RuntimeVisibleAnnotations:
reactor.util.annotation.Nullable()
MethodParameters:
Name Flags
source
zipper
public void subscribe(reactor.core.CoreSubscriber<? super R>);
descriptor: (Lreactor/core/CoreSubscriber;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=7, args_size=2
start local 0 start local 1 0: iconst_0
istore 3
start local 3 1: aload 0
getfield reactor.core.publisher.MonoZip.sources:[Lorg/reactivestreams/Publisher;
ifnull 5
2: aload 0
getfield reactor.core.publisher.MonoZip.sources:[Lorg/reactivestreams/Publisher;
astore 2
start local 2 3: aload 2
arraylength
istore 3
4: goto 14
end local 2 5: StackMap locals: reactor.core.publisher.MonoZip reactor.core.CoreSubscriber top int
StackMap stack:
bipush 8
anewarray org.reactivestreams.Publisher
astore 2
start local 2 6: aload 0
getfield reactor.core.publisher.MonoZip.sourcesIterable:Ljava/lang/Iterable;
invokeinterface java.lang.Iterable.iterator:()Ljava/util/Iterator;
astore 5
goto 13
StackMap locals: reactor.core.publisher.MonoZip reactor.core.CoreSubscriber org.reactivestreams.Publisher[] int top java.util.Iterator
StackMap stack:
7: aload 5
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.reactivestreams.Publisher
astore 4
start local 4 8: iload 3
aload 2
arraylength
if_icmpne 12
9: iload 3
iload 3
iconst_2
ishr
iadd
anewarray org.reactivestreams.Publisher
astore 6
start local 6 10: aload 2
iconst_0
aload 6
iconst_0
iload 3
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
11: aload 6
astore 2
end local 6 12: StackMap locals: reactor.core.publisher.MonoZip reactor.core.CoreSubscriber org.reactivestreams.Publisher[] int org.reactivestreams.Publisher java.util.Iterator
StackMap stack:
aload 2
iload 3
iinc 3 1
aload 4
aastore
end local 4 13: StackMap locals: reactor.core.publisher.MonoZip reactor.core.CoreSubscriber org.reactivestreams.Publisher[] int top java.util.Iterator
StackMap stack:
aload 5
invokeinterface java.util.Iterator.hasNext:()Z
ifne 7
14: StackMap locals: reactor.core.publisher.MonoZip reactor.core.CoreSubscriber org.reactivestreams.Publisher[] int
StackMap stack:
iload 3
ifne 17
15: aload 1
invokestatic reactor.core.publisher.Operators.complete:(Lorg/reactivestreams/Subscriber;)V
16: return
17: StackMap locals:
StackMap stack:
new reactor.core.publisher.MonoZip$ZipCoordinator
dup
aload 1
iload 3
aload 0
getfield reactor.core.publisher.MonoZip.delayError:Z
aload 0
getfield reactor.core.publisher.MonoZip.zipper:Ljava/util/function/Function;
invokespecial reactor.core.publisher.MonoZip$ZipCoordinator.<init>:(Lreactor/core/CoreSubscriber;IZLjava/util/function/Function;)V
astore 4
start local 4 18: aload 1
aload 4
invokeinterface reactor.core.CoreSubscriber.onSubscribe:(Lorg/reactivestreams/Subscription;)V
19: aload 4
getfield reactor.core.publisher.MonoZip$ZipCoordinator.subscribers:[Lreactor/core/publisher/MonoZip$ZipInner;
astore 5
start local 5 20: iconst_0
istore 6
start local 6 21: goto 24
22: StackMap locals: reactor.core.publisher.MonoZip$ZipCoordinator reactor.core.publisher.MonoZip$ZipInner[] int
StackMap stack:
aload 2
iload 6
aaload
aload 5
iload 6
aaload
invokeinterface org.reactivestreams.Publisher.subscribe:(Lorg/reactivestreams/Subscriber;)V
23: iinc 6 1
StackMap locals:
StackMap stack:
24: iload 6
iload 3
if_icmplt 22
end local 6 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 this Lreactor/core/publisher/MonoZip<TT;TR;>;
0 26 1 actual Lreactor/core/CoreSubscriber<-TR;>;
3 5 2 a [Lorg/reactivestreams/Publisher;
6 26 2 a [Lorg/reactivestreams/Publisher;
1 26 3 n I
8 13 4 m Lorg/reactivestreams/Publisher<*>;
10 12 6 b [Lorg/reactivestreams/Publisher;
18 26 4 parent Lreactor/core/publisher/MonoZip$ZipCoordinator<TR;>;
20 26 5 subs [Lreactor/core/publisher/MonoZip$ZipInner;
21 25 6 i I
Signature: (Lreactor/core/CoreSubscriber<-TR;>;)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.DELAY_ERROR:Lreactor/core/Scannable$Attr;
if_acmpne 1
aload 0
getfield reactor.core.publisher.MonoZip.delayError:Z
invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
areturn
1: StackMap locals:
StackMap stack:
aload 1
getstatic reactor.core.Scannable$Attr.RUN_STYLE:Lreactor/core/Scannable$Attr;
if_acmpne 2
getstatic reactor.core.Scannable$Attr$RunStyle.SYNC:Lreactor/core/Scannable$Attr$RunStyle;
areturn
2: StackMap locals:
StackMap stack:
aconst_null
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lreactor/core/publisher/MonoZip<TT;TR;>;
0 3 1 key Lreactor/core/Scannable$Attr;
MethodParameters:
Name Flags
key
}
Signature: <T:Ljava/lang/Object;R:Ljava/lang/Object;>Lreactor/core/publisher/Mono<TR;>;Lreactor/core/publisher/SourceProducer<TR;>;
SourceFile: "MonoZip.java"
NestMembers:
reactor.core.publisher.MonoZip$ZipCoordinator reactor.core.publisher.MonoZip$ZipInner
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 PairwiseZipper = reactor.core.publisher.FluxZip$PairwiseZipper of reactor.core.publisher.FluxZip
final ZipCoordinator = reactor.core.publisher.MonoZip$ZipCoordinator of reactor.core.publisher.MonoZip
final ZipInner = reactor.core.publisher.MonoZip$ZipInner of reactor.core.publisher.MonoZip