final class io.reactivex.internal.operators.flowable.FlowableRange$RangeSubscription extends io.reactivex.internal.operators.flowable.FlowableRange$BaseRangeSubscription
minor version: 0
major version: 59
flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
this_class: io.reactivex.internal.operators.flowable.FlowableRange$RangeSubscription
super_class: io.reactivex.internal.operators.flowable.FlowableRange$BaseRangeSubscription
{
private static final long serialVersionUID;
descriptor: J
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 2587302975077663557
final org.reactivestreams.Subscriber<? super java.lang.Integer> downstream;
descriptor: Lorg/reactivestreams/Subscriber;
flags: (0x0010) ACC_FINAL
Signature: Lorg/reactivestreams/Subscriber<-Ljava/lang/Integer;>;
void <init>(org.reactivestreams.Subscriber<? super java.lang.Integer>, int, );
descriptor: (Lorg/reactivestreams/Subscriber;II)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
iload 2
iload 3
invokespecial io.reactivex.internal.operators.flowable.FlowableRange$BaseRangeSubscription.<init>:(II)V
1: aload 0
aload 1
putfield io.reactivex.internal.operators.flowable.FlowableRange$RangeSubscription.downstream:Lorg/reactivestreams/Subscriber;
2: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lio/reactivex/internal/operators/flowable/FlowableRange$RangeSubscription;
0 3 1 actual Lorg/reactivestreams/Subscriber<-Ljava/lang/Integer;>;
0 3 2 index I
0 3 3 end I
Signature: (Lorg/reactivestreams/Subscriber<-Ljava/lang/Integer;>;II)V
MethodParameters:
Name Flags
actual
index
end
void fastPath();
descriptor: ()V
flags: (0x0000)
Code:
stack=2, locals=4, args_size=1
start local 0 0: aload 0
getfield io.reactivex.internal.operators.flowable.FlowableRange$RangeSubscription.end:I
istore 1
start local 1 1: aload 0
getfield io.reactivex.internal.operators.flowable.FlowableRange$RangeSubscription.downstream:Lorg/reactivestreams/Subscriber;
astore 2
start local 2 2: aload 0
getfield io.reactivex.internal.operators.flowable.FlowableRange$RangeSubscription.index:I
istore 3
start local 3 3: goto 8
4: StackMap locals: int org.reactivestreams.Subscriber int
StackMap stack:
aload 0
getfield io.reactivex.internal.operators.flowable.FlowableRange$RangeSubscription.cancelled:Z
ifeq 6
5: return
6: StackMap locals:
StackMap stack:
aload 2
iload 3
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
invokeinterface org.reactivestreams.Subscriber.onNext:(Ljava/lang/Object;)V
7: iinc 3 1
StackMap locals:
StackMap stack:
8: iload 3
iload 1
if_icmpne 4
end local 3 9: aload 0
getfield io.reactivex.internal.operators.flowable.FlowableRange$RangeSubscription.cancelled:Z
ifeq 11
10: return
11: StackMap locals:
StackMap stack:
aload 2
invokeinterface org.reactivestreams.Subscriber.onComplete:()V
12: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 this Lio/reactivex/internal/operators/flowable/FlowableRange$RangeSubscription;
1 13 1 f I
2 13 2 a Lorg/reactivestreams/Subscriber<-Ljava/lang/Integer;>;
3 9 3 i I
void slowPath(long);
descriptor: (J)V
flags: (0x0000)
Code:
stack=4, locals=8, 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.FlowableRange$RangeSubscription.end:I
istore 5
start local 5 2: aload 0
getfield io.reactivex.internal.operators.flowable.FlowableRange$RangeSubscription.index:I
istore 6
start local 6 3: aload 0
getfield io.reactivex.internal.operators.flowable.FlowableRange$RangeSubscription.downstream:Lorg/reactivestreams/Subscriber;
astore 7
start local 7 4: goto 10
5: StackMap locals: io.reactivex.internal.operators.flowable.FlowableRange$RangeSubscription long long int int org.reactivestreams.Subscriber
StackMap stack:
aload 0
getfield io.reactivex.internal.operators.flowable.FlowableRange$RangeSubscription.cancelled:Z
ifeq 7
6: return
7: StackMap locals:
StackMap stack:
aload 7
iload 6
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
invokeinterface org.reactivestreams.Subscriber.onNext:(Ljava/lang/Object;)V
8: lload 3
lconst_1
ladd
lstore 3
9: iinc 6 1
10: StackMap locals:
StackMap stack:
lload 3
lload 1
lcmp
ifeq 11
iload 6
iload 5
if_icmpne 5
11: StackMap locals:
StackMap stack:
iload 6
iload 5
if_icmpne 15
12: aload 0
getfield io.reactivex.internal.operators.flowable.FlowableRange$RangeSubscription.cancelled:Z
ifne 14
13: aload 7
invokeinterface org.reactivestreams.Subscriber.onComplete:()V
14: StackMap locals:
StackMap stack:
return
15: StackMap locals:
StackMap stack:
aload 0
invokevirtual io.reactivex.internal.operators.flowable.FlowableRange$RangeSubscription.get:()J
lstore 1
16: lload 3
lload 1
lcmp
ifne 22
17: aload 0
iload 6
putfield io.reactivex.internal.operators.flowable.FlowableRange$RangeSubscription.index:I
18: aload 0
lload 3
lneg
invokevirtual io.reactivex.internal.operators.flowable.FlowableRange$RangeSubscription.addAndGet:(J)J
lstore 1
19: lload 1
lconst_0
lcmp
ifne 21
20: return
21: StackMap locals:
StackMap stack:
lconst_0
lstore 3
22: StackMap locals:
StackMap stack:
goto 10
end local 7 end local 6 end local 5 end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 23 0 this Lio/reactivex/internal/operators/flowable/FlowableRange$RangeSubscription;
0 23 1 r J
1 23 3 e J
2 23 5 f I
3 23 6 i I
4 23 7 a Lorg/reactivestreams/Subscriber<-Ljava/lang/Integer;>;
MethodParameters:
Name Flags
r
}
SourceFile: "FlowableRange.java"
NestHost: io.reactivex.internal.operators.flowable.FlowableRange
InnerClasses:
abstract BaseRangeSubscription = io.reactivex.internal.operators.flowable.FlowableRange$BaseRangeSubscription of io.reactivex.internal.operators.flowable.FlowableRange
final RangeSubscription = io.reactivex.internal.operators.flowable.FlowableRange$RangeSubscription of io.reactivex.internal.operators.flowable.FlowableRange