public final class io.reactivex.internal.operators.flowable.FlowablePublishMulticast<T, R> extends io.reactivex.internal.operators.flowable.AbstractFlowableWithUpstream<T, R>
minor version: 0
major version: 59
flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
this_class: io.reactivex.internal.operators.flowable.FlowablePublishMulticast
super_class: io.reactivex.internal.operators.flowable.AbstractFlowableWithUpstream
{
final io.reactivex.functions.Function<? super io.reactivex.Flowable<T>, ? extends org.reactivestreams.Publisher<? extends R>> selector;
descriptor: Lio/reactivex/functions/Function;
flags: (0x0010) ACC_FINAL
Signature: Lio/reactivex/functions/Function<-Lio/reactivex/Flowable<TT;>;+Lorg/reactivestreams/Publisher<+TR;>;>;
final int prefetch;
descriptor: I
flags: (0x0010) ACC_FINAL
final boolean delayError;
descriptor: Z
flags: (0x0010) ACC_FINAL
public void <init>(io.reactivex.Flowable<T>, io.reactivex.functions.Function<? super io.reactivex.Flowable<T>, ? extends org.reactivestreams.Publisher<? extends R>>, int, );
descriptor: (Lio/reactivex/Flowable;Lio/reactivex/functions/Function;IZ)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=5, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
aload 1
invokespecial io.reactivex.internal.operators.flowable.AbstractFlowableWithUpstream.<init>:(Lio/reactivex/Flowable;)V
1: aload 0
aload 2
putfield io.reactivex.internal.operators.flowable.FlowablePublishMulticast.selector:Lio/reactivex/functions/Function;
2: aload 0
iload 3
putfield io.reactivex.internal.operators.flowable.FlowablePublishMulticast.prefetch:I
3: aload 0
iload 4
putfield io.reactivex.internal.operators.flowable.FlowablePublishMulticast.delayError:Z
4: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lio/reactivex/internal/operators/flowable/FlowablePublishMulticast<TT;TR;>;
0 5 1 source Lio/reactivex/Flowable<TT;>;
0 5 2 selector Lio/reactivex/functions/Function<-Lio/reactivex/Flowable<TT;>;+Lorg/reactivestreams/Publisher<+TR;>;>;
0 5 3 prefetch I
0 5 4 delayError Z
Signature: (Lio/reactivex/Flowable<TT;>;Lio/reactivex/functions/Function<-Lio/reactivex/Flowable<TT;>;+Lorg/reactivestreams/Publisher<+TR;>;>;IZ)V
MethodParameters:
Name Flags
source
selector
prefetch
delayError
protected void subscribeActual(org.reactivestreams.Subscriber<? super R>);
descriptor: (Lorg/reactivestreams/Subscriber;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=4, locals=5, args_size=2
start local 0 start local 1 0: new io.reactivex.internal.operators.flowable.FlowablePublishMulticast$MulticastProcessor
dup
aload 0
getfield io.reactivex.internal.operators.flowable.FlowablePublishMulticast.prefetch:I
aload 0
getfield io.reactivex.internal.operators.flowable.FlowablePublishMulticast.delayError:Z
invokespecial io.reactivex.internal.operators.flowable.FlowablePublishMulticast$MulticastProcessor.<init>:(IZ)V
astore 2
start local 2 1: aload 0
getfield io.reactivex.internal.operators.flowable.FlowablePublishMulticast.selector:Lio/reactivex/functions/Function;
aload 2
invokeinterface io.reactivex.functions.Function.apply:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast org.reactivestreams.Publisher
ldc "selector returned a null Publisher"
invokestatic io.reactivex.internal.functions.ObjectHelper.requireNonNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
checkcast org.reactivestreams.Publisher
astore 3
start local 3 2: goto 7
end local 3 StackMap locals: io.reactivex.internal.operators.flowable.FlowablePublishMulticast org.reactivestreams.Subscriber io.reactivex.internal.operators.flowable.FlowablePublishMulticast$MulticastProcessor
StackMap stack: java.lang.Throwable
3: astore 4
start local 4 4: aload 4
invokestatic io.reactivex.exceptions.Exceptions.throwIfFatal:(Ljava/lang/Throwable;)V
5: aload 4
aload 1
invokestatic io.reactivex.internal.subscriptions.EmptySubscription.error:(Ljava/lang/Throwable;Lorg/reactivestreams/Subscriber;)V
6: return
end local 4 start local 3 7: StackMap locals: org.reactivestreams.Publisher
StackMap stack:
new io.reactivex.internal.operators.flowable.FlowablePublishMulticast$OutputCanceller
dup
aload 1
aload 2
invokespecial io.reactivex.internal.operators.flowable.FlowablePublishMulticast$OutputCanceller.<init>:(Lorg/reactivestreams/Subscriber;Lio/reactivex/internal/operators/flowable/FlowablePublishMulticast$MulticastProcessor;)V
astore 4
start local 4 8: aload 3
aload 4
invokeinterface org.reactivestreams.Publisher.subscribe:(Lorg/reactivestreams/Subscriber;)V
9: aload 0
getfield io.reactivex.internal.operators.flowable.FlowablePublishMulticast.source:Lio/reactivex/Flowable;
aload 2
invokevirtual io.reactivex.Flowable.subscribe:(Lio/reactivex/FlowableSubscriber;)V
10: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lio/reactivex/internal/operators/flowable/FlowablePublishMulticast<TT;TR;>;
0 11 1 s Lorg/reactivestreams/Subscriber<-TR;>;
1 11 2 mp Lio/reactivex/internal/operators/flowable/FlowablePublishMulticast$MulticastProcessor<TT;>;
2 3 3 other Lorg/reactivestreams/Publisher<+TR;>;
7 11 3 other Lorg/reactivestreams/Publisher<+TR;>;
4 7 4 ex Ljava/lang/Throwable;
8 11 4 out Lio/reactivex/internal/operators/flowable/FlowablePublishMulticast$OutputCanceller<TR;>;
Exception table:
from to target type
1 2 3 Class java.lang.Throwable
Signature: (Lorg/reactivestreams/Subscriber<-TR;>;)V
MethodParameters:
Name Flags
s
}
Signature: <T:Ljava/lang/Object;R:Ljava/lang/Object;>Lio/reactivex/internal/operators/flowable/AbstractFlowableWithUpstream<TT;TR;>;
SourceFile: "FlowablePublishMulticast.java"
NestMembers:
io.reactivex.internal.operators.flowable.FlowablePublishMulticast$MulticastProcessor io.reactivex.internal.operators.flowable.FlowablePublishMulticast$MulticastSubscription io.reactivex.internal.operators.flowable.FlowablePublishMulticast$OutputCanceller
InnerClasses:
final MulticastProcessor = io.reactivex.internal.operators.flowable.FlowablePublishMulticast$MulticastProcessor of io.reactivex.internal.operators.flowable.FlowablePublishMulticast
final MulticastSubscription = io.reactivex.internal.operators.flowable.FlowablePublishMulticast$MulticastSubscription of io.reactivex.internal.operators.flowable.FlowablePublishMulticast
final OutputCanceller = io.reactivex.internal.operators.flowable.FlowablePublishMulticast$OutputCanceller of io.reactivex.internal.operators.flowable.FlowablePublishMulticast