final class io.reactivex.internal.operators.flowable.FlowableFromIterable$IteratorSubscription<T> extends io.reactivex.internal.operators.flowable.FlowableFromIterable$BaseRangeSubscription<T>
minor version: 0
major version: 59
flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
this_class: io.reactivex.internal.operators.flowable.FlowableFromIterable$IteratorSubscription
super_class: io.reactivex.internal.operators.flowable.FlowableFromIterable$BaseRangeSubscription
{
private static final long serialVersionUID;
descriptor: J
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: -6022804456014692607
final org.reactivestreams.Subscriber<? super T> downstream;
descriptor: Lorg/reactivestreams/Subscriber;
flags: (0x0010) ACC_FINAL
Signature: Lorg/reactivestreams/Subscriber<-TT;>;
void <init>(org.reactivestreams.Subscriber<? super T>, java.util.Iterator<? extends T>);
descriptor: (Lorg/reactivestreams/Subscriber;Ljava/util/Iterator;)V
flags: (0x0000)
Code:
stack=2, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 2
invokespecial io.reactivex.internal.operators.flowable.FlowableFromIterable$BaseRangeSubscription.<init>:(Ljava/util/Iterator;)V
1: aload 0
aload 1
putfield io.reactivex.internal.operators.flowable.FlowableFromIterable$IteratorSubscription.downstream:Lorg/reactivestreams/Subscriber;
2: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lio/reactivex/internal/operators/flowable/FlowableFromIterable$IteratorSubscription<TT;>;
0 3 1 actual Lorg/reactivestreams/Subscriber<-TT;>;
0 3 2 it Ljava/util/Iterator<+TT;>;
Signature: (Lorg/reactivestreams/Subscriber<-TT;>;Ljava/util/Iterator<+TT;>;)V
MethodParameters:
Name Flags
actual
it
void fastPath();
descriptor: ()V
flags: (0x0000)
Code:
stack=4, locals=6, args_size=1
start local 0 0: aload 0
getfield io.reactivex.internal.operators.flowable.FlowableFromIterable$IteratorSubscription.it:Ljava/util/Iterator;
astore 1
start local 1 1: aload 0
getfield io.reactivex.internal.operators.flowable.FlowableFromIterable$IteratorSubscription.downstream:Lorg/reactivestreams/Subscriber;
astore 2
start local 2 2: StackMap locals: java.util.Iterator org.reactivestreams.Subscriber
StackMap stack:
aload 0
getfield io.reactivex.internal.operators.flowable.FlowableFromIterable$IteratorSubscription.cancelled:Z
ifeq 4
3: return
4: StackMap locals:
StackMap stack:
aload 1
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
astore 3
start local 3 5: goto 10
end local 3 StackMap locals:
StackMap stack: java.lang.Throwable
6: astore 4
start local 4 7: aload 4
invokestatic io.reactivex.exceptions.Exceptions.throwIfFatal:(Ljava/lang/Throwable;)V
8: aload 2
aload 4
invokeinterface org.reactivestreams.Subscriber.onError:(Ljava/lang/Throwable;)V
9: return
end local 4 start local 3 10: StackMap locals: java.lang.Object
StackMap stack:
aload 0
getfield io.reactivex.internal.operators.flowable.FlowableFromIterable$IteratorSubscription.cancelled:Z
ifeq 12
11: return
12: StackMap locals:
StackMap stack:
aload 3
ifnonnull 15
13: aload 2
new java.lang.NullPointerException
dup
ldc "Iterator.next() returned a null value"
invokespecial java.lang.NullPointerException.<init>:(Ljava/lang/String;)V
invokeinterface org.reactivestreams.Subscriber.onError:(Ljava/lang/Throwable;)V
14: return
15: StackMap locals:
StackMap stack:
aload 2
aload 3
invokeinterface org.reactivestreams.Subscriber.onNext:(Ljava/lang/Object;)V
16: aload 0
getfield io.reactivex.internal.operators.flowable.FlowableFromIterable$IteratorSubscription.cancelled:Z
ifeq 18
17: return
18: StackMap locals:
StackMap stack:
aload 1
invokeinterface java.util.Iterator.hasNext:()Z
istore 4
start local 4 19: goto 24
end local 4 StackMap locals:
StackMap stack: java.lang.Throwable
20: astore 5
start local 5 21: aload 5
invokestatic io.reactivex.exceptions.Exceptions.throwIfFatal:(Ljava/lang/Throwable;)V
22: aload 2
aload 5
invokeinterface org.reactivestreams.Subscriber.onError:(Ljava/lang/Throwable;)V
23: return
end local 5 start local 4 24: StackMap locals: int
StackMap stack:
iload 4
ifne 2
25: aload 0
getfield io.reactivex.internal.operators.flowable.FlowableFromIterable$IteratorSubscription.cancelled:Z
ifne 27
26: aload 2
invokeinterface org.reactivestreams.Subscriber.onComplete:()V
27: StackMap locals:
StackMap stack:
return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 28 0 this Lio/reactivex/internal/operators/flowable/FlowableFromIterable$IteratorSubscription<TT;>;
1 28 1 it Ljava/util/Iterator<+TT;>;
2 28 2 a Lorg/reactivestreams/Subscriber<-TT;>;
5 6 3 t TT;
10 28 3 t TT;
7 10 4 ex Ljava/lang/Throwable;
19 20 4 b Z
24 28 4 b Z
21 24 5 ex Ljava/lang/Throwable;
Exception table:
from to target type
4 5 6 Class java.lang.Throwable
18 19 20 Class java.lang.Throwable
void slowPath(long);
descriptor: (J)V
flags: (0x0000)
Code:
stack=4, locals=10, args_size=2
start local 0 start local 1 0: lconst_0
lstore 3
start local 3 1: aload 0
getfield io.reactivex.internal.operators.flowable.FlowableFromIterable$IteratorSubscription.it:Ljava/util/Iterator;
astore 5
start local 5 2: aload 0
getfield io.reactivex.internal.operators.flowable.FlowableFromIterable$IteratorSubscription.downstream:Lorg/reactivestreams/Subscriber;
astore 6
start local 6 3: goto 31
4: StackMap locals: long java.util.Iterator org.reactivestreams.Subscriber
StackMap stack:
aload 0
getfield io.reactivex.internal.operators.flowable.FlowableFromIterable$IteratorSubscription.cancelled:Z
ifeq 6
5: return
6: StackMap locals:
StackMap stack:
aload 5
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
astore 7
start local 7 7: goto 12
end local 7 StackMap locals:
StackMap stack: java.lang.Throwable
8: astore 8
start local 8 9: aload 8
invokestatic io.reactivex.exceptions.Exceptions.throwIfFatal:(Ljava/lang/Throwable;)V
10: aload 6
aload 8
invokeinterface org.reactivestreams.Subscriber.onError:(Ljava/lang/Throwable;)V
11: return
end local 8 start local 7 12: StackMap locals: java.lang.Object
StackMap stack:
aload 0
getfield io.reactivex.internal.operators.flowable.FlowableFromIterable$IteratorSubscription.cancelled:Z
ifeq 14
13: return
14: StackMap locals:
StackMap stack:
aload 7
ifnonnull 17
15: aload 6
new java.lang.NullPointerException
dup
ldc "Iterator.next() returned a null value"
invokespecial java.lang.NullPointerException.<init>:(Ljava/lang/String;)V
invokeinterface org.reactivestreams.Subscriber.onError:(Ljava/lang/Throwable;)V
16: return
17: StackMap locals:
StackMap stack:
aload 6
aload 7
invokeinterface org.reactivestreams.Subscriber.onNext:(Ljava/lang/Object;)V
18: aload 0
getfield io.reactivex.internal.operators.flowable.FlowableFromIterable$IteratorSubscription.cancelled:Z
ifeq 20
19: return
20: StackMap locals:
StackMap stack:
aload 5
invokeinterface java.util.Iterator.hasNext:()Z
istore 8
start local 8 21: goto 26
end local 8 StackMap locals:
StackMap stack: java.lang.Throwable
22: astore 9
start local 9 23: aload 9
invokestatic io.reactivex.exceptions.Exceptions.throwIfFatal:(Ljava/lang/Throwable;)V
24: aload 6
aload 9
invokeinterface org.reactivestreams.Subscriber.onError:(Ljava/lang/Throwable;)V
25: return
end local 9 start local 8 26: StackMap locals: int
StackMap stack:
iload 8
ifne 30
27: aload 0
getfield io.reactivex.internal.operators.flowable.FlowableFromIterable$IteratorSubscription.cancelled:Z
ifne 29
28: aload 6
invokeinterface org.reactivestreams.Subscriber.onComplete:()V
29: StackMap locals:
StackMap stack:
return
30: StackMap locals:
StackMap stack:
lload 3
lconst_1
ladd
lstore 3
end local 8 end local 7 31: StackMap locals:
StackMap stack:
lload 3
lload 1
lcmp
ifne 4
32: aload 0
invokevirtual io.reactivex.internal.operators.flowable.FlowableFromIterable$IteratorSubscription.get:()J
lstore 1
33: lload 3
lload 1
lcmp
ifne 38
34: aload 0
lload 3
lneg
invokevirtual io.reactivex.internal.operators.flowable.FlowableFromIterable$IteratorSubscription.addAndGet:(J)J
lstore 1
35: lload 1
lconst_0
lcmp
ifne 37
36: return
37: StackMap locals:
StackMap stack:
lconst_0
lstore 3
38: StackMap locals:
StackMap stack:
goto 31
end local 6 end local 5 end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 39 0 this Lio/reactivex/internal/operators/flowable/FlowableFromIterable$IteratorSubscription<TT;>;
0 39 1 r J
1 39 3 e J
2 39 5 it Ljava/util/Iterator<+TT;>;
3 39 6 a Lorg/reactivestreams/Subscriber<-TT;>;
7 8 7 t TT;
12 31 7 t TT;
9 12 8 ex Ljava/lang/Throwable;
21 22 8 b Z
26 31 8 b Z
23 26 9 ex Ljava/lang/Throwable;
Exception table:
from to target type
6 7 8 Class java.lang.Throwable
20 21 22 Class java.lang.Throwable
MethodParameters:
Name Flags
r
}
Signature: <T:Ljava/lang/Object;>Lio/reactivex/internal/operators/flowable/FlowableFromIterable$BaseRangeSubscription<TT;>;
SourceFile: "FlowableFromIterable.java"
NestHost: io.reactivex.internal.operators.flowable.FlowableFromIterable
InnerClasses:
abstract BaseRangeSubscription = io.reactivex.internal.operators.flowable.FlowableFromIterable$BaseRangeSubscription of io.reactivex.internal.operators.flowable.FlowableFromIterable
final IteratorSubscription = io.reactivex.internal.operators.flowable.FlowableFromIterable$IteratorSubscription of io.reactivex.internal.operators.flowable.FlowableFromIterable