final class io.reactivex.internal.operators.flowable.FlowableConcatArray$ConcatArraySubscriber<T> extends io.reactivex.internal.subscriptions.SubscriptionArbiter implements io.reactivex.FlowableSubscriber<T>
minor version: 0
major version: 59
flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
this_class: io.reactivex.internal.operators.flowable.FlowableConcatArray$ConcatArraySubscriber
super_class: io.reactivex.internal.subscriptions.SubscriptionArbiter
{
private static final long serialVersionUID;
descriptor: J
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: -8158322871608889516
final org.reactivestreams.Subscriber<? super T> downstream;
descriptor: Lorg/reactivestreams/Subscriber;
flags: (0x0010) ACC_FINAL
Signature: Lorg/reactivestreams/Subscriber<-TT;>;
final org.reactivestreams.Publisher<? extends T>[] sources;
descriptor: [Lorg/reactivestreams/Publisher;
flags: (0x0010) ACC_FINAL
Signature: [Lorg/reactivestreams/Publisher<+TT;>;
final boolean delayError;
descriptor: Z
flags: (0x0010) ACC_FINAL
final java.util.concurrent.atomic.AtomicInteger wip;
descriptor: Ljava/util/concurrent/atomic/AtomicInteger;
flags: (0x0010) ACC_FINAL
int index;
descriptor: I
flags: (0x0000)
java.util.List<java.lang.Throwable> errors;
descriptor: Ljava/util/List;
flags: (0x0000)
Signature: Ljava/util/List<Ljava/lang/Throwable;>;
long produced;
descriptor: J
flags: (0x0000)
void <init>(org.reactivestreams.Publisher<? extends T>[], boolean, org.reactivestreams.Subscriber<? super T>);
descriptor: ([Lorg/reactivestreams/Publisher;ZLorg/reactivestreams/Subscriber;)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
iconst_0
invokespecial io.reactivex.internal.subscriptions.SubscriptionArbiter.<init>:(Z)V
1: aload 0
aload 3
putfield io.reactivex.internal.operators.flowable.FlowableConcatArray$ConcatArraySubscriber.downstream:Lorg/reactivestreams/Subscriber;
2: aload 0
aload 1
putfield io.reactivex.internal.operators.flowable.FlowableConcatArray$ConcatArraySubscriber.sources:[Lorg/reactivestreams/Publisher;
3: aload 0
iload 2
putfield io.reactivex.internal.operators.flowable.FlowableConcatArray$ConcatArraySubscriber.delayError:Z
4: aload 0
new java.util.concurrent.atomic.AtomicInteger
dup
invokespecial java.util.concurrent.atomic.AtomicInteger.<init>:()V
putfield io.reactivex.internal.operators.flowable.FlowableConcatArray$ConcatArraySubscriber.wip:Ljava/util/concurrent/atomic/AtomicInteger;
5: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lio/reactivex/internal/operators/flowable/FlowableConcatArray$ConcatArraySubscriber<TT;>;
0 6 1 sources [Lorg/reactivestreams/Publisher;
0 6 2 delayError Z
0 6 3 downstream Lorg/reactivestreams/Subscriber<-TT;>;
Signature: ([Lorg/reactivestreams/Publisher<+TT;>;ZLorg/reactivestreams/Subscriber<-TT;>;)V
MethodParameters:
Name Flags
sources
delayError
downstream
public void onSubscribe(org.reactivestreams.Subscription);
descriptor: (Lorg/reactivestreams/Subscription;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokevirtual io.reactivex.internal.operators.flowable.FlowableConcatArray$ConcatArraySubscriber.setSubscription:(Lorg/reactivestreams/Subscription;)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lio/reactivex/internal/operators/flowable/FlowableConcatArray$ConcatArraySubscriber<TT;>;
0 2 1 s Lorg/reactivestreams/Subscription;
MethodParameters:
Name Flags
s
public void onNext();
descriptor: (Ljava/lang/Object;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=2, args_size=2
start local 0 start local 1 0: aload 0
dup
getfield io.reactivex.internal.operators.flowable.FlowableConcatArray$ConcatArraySubscriber.produced:J
lconst_1
ladd
putfield io.reactivex.internal.operators.flowable.FlowableConcatArray$ConcatArraySubscriber.produced:J
1: aload 0
getfield io.reactivex.internal.operators.flowable.FlowableConcatArray$ConcatArraySubscriber.downstream:Lorg/reactivestreams/Subscriber;
aload 1
invokeinterface org.reactivestreams.Subscriber.onNext:(Ljava/lang/Object;)V
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lio/reactivex/internal/operators/flowable/FlowableConcatArray$ConcatArraySubscriber<TT;>;
0 3 1 t TT;
Signature: (TT;)V
MethodParameters:
Name Flags
t
public void onError(java.lang.Throwable);
descriptor: (Ljava/lang/Throwable;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=2
start local 0 start local 1 0: aload 0
getfield io.reactivex.internal.operators.flowable.FlowableConcatArray$ConcatArraySubscriber.delayError:Z
ifeq 8
1: aload 0
getfield io.reactivex.internal.operators.flowable.FlowableConcatArray$ConcatArraySubscriber.errors:Ljava/util/List;
astore 2
start local 2 2: aload 2
ifnonnull 5
3: new java.util.ArrayList
dup
aload 0
getfield io.reactivex.internal.operators.flowable.FlowableConcatArray$ConcatArraySubscriber.sources:[Lorg/reactivestreams/Publisher;
arraylength
aload 0
getfield io.reactivex.internal.operators.flowable.FlowableConcatArray$ConcatArraySubscriber.index:I
isub
iconst_1
iadd
invokespecial java.util.ArrayList.<init>:(I)V
astore 2
4: aload 0
aload 2
putfield io.reactivex.internal.operators.flowable.FlowableConcatArray$ConcatArraySubscriber.errors:Ljava/util/List;
5: StackMap locals: java.util.List
StackMap stack:
aload 2
aload 1
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
6: aload 0
invokevirtual io.reactivex.internal.operators.flowable.FlowableConcatArray$ConcatArraySubscriber.onComplete:()V
end local 2 7: goto 9
8: StackMap locals:
StackMap stack:
aload 0
getfield io.reactivex.internal.operators.flowable.FlowableConcatArray$ConcatArraySubscriber.downstream:Lorg/reactivestreams/Subscriber;
aload 1
invokeinterface org.reactivestreams.Subscriber.onError:(Ljava/lang/Throwable;)V
9: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lio/reactivex/internal/operators/flowable/FlowableConcatArray$ConcatArraySubscriber<TT;>;
0 10 1 t Ljava/lang/Throwable;
2 7 2 list Ljava/util/List<Ljava/lang/Throwable;>;
MethodParameters:
Name Flags
t
public void onComplete();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=7, args_size=1
start local 0 0: aload 0
getfield io.reactivex.internal.operators.flowable.FlowableConcatArray$ConcatArraySubscriber.wip:Ljava/util/concurrent/atomic/AtomicInteger;
invokevirtual java.util.concurrent.atomic.AtomicInteger.getAndIncrement:()I
ifne 34
1: aload 0
getfield io.reactivex.internal.operators.flowable.FlowableConcatArray$ConcatArraySubscriber.sources:[Lorg/reactivestreams/Publisher;
astore 1
start local 1 2: aload 1
arraylength
istore 2
start local 2 3: aload 0
getfield io.reactivex.internal.operators.flowable.FlowableConcatArray$ConcatArraySubscriber.index:I
istore 3
start local 3 4: StackMap locals: org.reactivestreams.Publisher[] int int
StackMap stack:
iload 3
iload 2
if_icmpne 14
5: aload 0
getfield io.reactivex.internal.operators.flowable.FlowableConcatArray$ConcatArraySubscriber.errors:Ljava/util/List;
astore 4
start local 4 6: aload 4
ifnull 12
7: aload 4
invokeinterface java.util.List.size:()I
iconst_1
if_icmpne 10
8: aload 0
getfield io.reactivex.internal.operators.flowable.FlowableConcatArray$ConcatArraySubscriber.downstream:Lorg/reactivestreams/Subscriber;
aload 4
iconst_0
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast java.lang.Throwable
invokeinterface org.reactivestreams.Subscriber.onError:(Ljava/lang/Throwable;)V
9: goto 13
10: StackMap locals: java.util.List
StackMap stack:
aload 0
getfield io.reactivex.internal.operators.flowable.FlowableConcatArray$ConcatArraySubscriber.downstream:Lorg/reactivestreams/Subscriber;
new io.reactivex.exceptions.CompositeException
dup
aload 4
invokespecial io.reactivex.exceptions.CompositeException.<init>:(Ljava/lang/Iterable;)V
invokeinterface org.reactivestreams.Subscriber.onError:(Ljava/lang/Throwable;)V
11: goto 13
12: StackMap locals:
StackMap stack:
aload 0
getfield io.reactivex.internal.operators.flowable.FlowableConcatArray$ConcatArraySubscriber.downstream:Lorg/reactivestreams/Subscriber;
invokeinterface org.reactivestreams.Subscriber.onComplete:()V
13: StackMap locals:
StackMap stack:
return
end local 4 14: StackMap locals:
StackMap stack:
aload 1
iload 3
aaload
astore 4
start local 4 15: aload 4
ifnonnull 27
16: new java.lang.NullPointerException
dup
ldc "A Publisher entry is null"
invokespecial java.lang.NullPointerException.<init>:(Ljava/lang/String;)V
astore 5
start local 5 17: aload 0
getfield io.reactivex.internal.operators.flowable.FlowableConcatArray$ConcatArraySubscriber.delayError:Z
ifeq 25
18: aload 0
getfield io.reactivex.internal.operators.flowable.FlowableConcatArray$ConcatArraySubscriber.errors:Ljava/util/List;
astore 6
start local 6 19: aload 6
ifnonnull 22
20: new java.util.ArrayList
dup
iload 2
iload 3
isub
iconst_1
iadd
invokespecial java.util.ArrayList.<init>:(I)V
astore 6
21: aload 0
aload 6
putfield io.reactivex.internal.operators.flowable.FlowableConcatArray$ConcatArraySubscriber.errors:Ljava/util/List;
22: StackMap locals: org.reactivestreams.Publisher java.lang.Throwable java.util.List
StackMap stack:
aload 6
aload 5
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
23: iinc 3 1
24: goto 4
end local 6 25: StackMap locals:
StackMap stack:
aload 0
getfield io.reactivex.internal.operators.flowable.FlowableConcatArray$ConcatArraySubscriber.downstream:Lorg/reactivestreams/Subscriber;
aload 5
invokeinterface org.reactivestreams.Subscriber.onError:(Ljava/lang/Throwable;)V
26: return
end local 5 27: StackMap locals:
StackMap stack:
aload 0
getfield io.reactivex.internal.operators.flowable.FlowableConcatArray$ConcatArraySubscriber.produced:J
lstore 5
start local 5 28: lload 5
lconst_0
lcmp
ifeq 31
29: aload 0
lconst_0
putfield io.reactivex.internal.operators.flowable.FlowableConcatArray$ConcatArraySubscriber.produced:J
30: aload 0
lload 5
invokevirtual io.reactivex.internal.operators.flowable.FlowableConcatArray$ConcatArraySubscriber.produced:(J)V
31: StackMap locals: long
StackMap stack:
aload 4
aload 0
invokeinterface org.reactivestreams.Publisher.subscribe:(Lorg/reactivestreams/Subscriber;)V
end local 5 32: aload 0
iinc 3 1
iload 3
putfield io.reactivex.internal.operators.flowable.FlowableConcatArray$ConcatArraySubscriber.index:I
33: aload 0
getfield io.reactivex.internal.operators.flowable.FlowableConcatArray$ConcatArraySubscriber.wip:Ljava/util/concurrent/atomic/AtomicInteger;
invokevirtual java.util.concurrent.atomic.AtomicInteger.decrementAndGet:()I
ifne 4
end local 4 end local 3 end local 2 end local 1 34: StackMap locals: io.reactivex.internal.operators.flowable.FlowableConcatArray$ConcatArraySubscriber
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 35 0 this Lio/reactivex/internal/operators/flowable/FlowableConcatArray$ConcatArraySubscriber<TT;>;
2 34 1 sources [Lorg/reactivestreams/Publisher;
3 34 2 n I
4 34 3 i I
6 14 4 list Ljava/util/List<Ljava/lang/Throwable;>;
15 34 4 p Lorg/reactivestreams/Publisher<+TT;>;
17 27 5 ex Ljava/lang/Throwable;
19 25 6 list Ljava/util/List<Ljava/lang/Throwable;>;
28 32 5 r J
}
Signature: <T:Ljava/lang/Object;>Lio/reactivex/internal/subscriptions/SubscriptionArbiter;Lio/reactivex/FlowableSubscriber<TT;>;
SourceFile: "FlowableConcatArray.java"
NestHost: io.reactivex.internal.operators.flowable.FlowableConcatArray
InnerClasses:
final ConcatArraySubscriber = io.reactivex.internal.operators.flowable.FlowableConcatArray$ConcatArraySubscriber of io.reactivex.internal.operators.flowable.FlowableConcatArray