final class io.reactivex.internal.operators.flowable.FlowableReplay$UnboundedReplayBuffer<T> extends java.util.ArrayList<java.lang.Object> implements io.reactivex.internal.operators.flowable.FlowableReplay$ReplayBuffer<T>
minor version: 0
major version: 59
flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
this_class: io.reactivex.internal.operators.flowable.FlowableReplay$UnboundedReplayBuffer
super_class: java.util.ArrayList
{
private static final long serialVersionUID;
descriptor: J
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 7063189396499112664
volatile int size;
descriptor: I
flags: (0x0040) ACC_VOLATILE
void <init>(int);
descriptor: (I)V
flags: (0x0000)
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iload 1
invokespecial java.util.ArrayList.<init>:(I)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lio/reactivex/internal/operators/flowable/FlowableReplay$UnboundedReplayBuffer<TT;>;
0 2 1 capacityHint I
MethodParameters:
Name Flags
capacityHint
public void next();
descriptor: (Ljava/lang/Object;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokestatic io.reactivex.internal.util.NotificationLite.next:(Ljava/lang/Object;)Ljava/lang/Object;
invokevirtual io.reactivex.internal.operators.flowable.FlowableReplay$UnboundedReplayBuffer.add:(Ljava/lang/Object;)Z
pop
1: aload 0
dup
getfield io.reactivex.internal.operators.flowable.FlowableReplay$UnboundedReplayBuffer.size:I
iconst_1
iadd
putfield io.reactivex.internal.operators.flowable.FlowableReplay$UnboundedReplayBuffer.size:I
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lio/reactivex/internal/operators/flowable/FlowableReplay$UnboundedReplayBuffer<TT;>;
0 3 1 value TT;
Signature: (TT;)V
MethodParameters:
Name Flags
value
public void error(java.lang.Throwable);
descriptor: (Ljava/lang/Throwable;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokestatic io.reactivex.internal.util.NotificationLite.error:(Ljava/lang/Throwable;)Ljava/lang/Object;
invokevirtual io.reactivex.internal.operators.flowable.FlowableReplay$UnboundedReplayBuffer.add:(Ljava/lang/Object;)Z
pop
1: aload 0
dup
getfield io.reactivex.internal.operators.flowable.FlowableReplay$UnboundedReplayBuffer.size:I
iconst_1
iadd
putfield io.reactivex.internal.operators.flowable.FlowableReplay$UnboundedReplayBuffer.size:I
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lio/reactivex/internal/operators/flowable/FlowableReplay$UnboundedReplayBuffer<TT;>;
0 3 1 e Ljava/lang/Throwable;
MethodParameters:
Name Flags
e
public void complete();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
invokestatic io.reactivex.internal.util.NotificationLite.complete:()Ljava/lang/Object;
invokevirtual io.reactivex.internal.operators.flowable.FlowableReplay$UnboundedReplayBuffer.add:(Ljava/lang/Object;)Z
pop
1: aload 0
dup
getfield io.reactivex.internal.operators.flowable.FlowableReplay$UnboundedReplayBuffer.size:I
iconst_1
iadd
putfield io.reactivex.internal.operators.flowable.FlowableReplay$UnboundedReplayBuffer.size:I
2: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lio/reactivex/internal/operators/flowable/FlowableReplay$UnboundedReplayBuffer<TT;>;
public void replay(io.reactivex.internal.operators.flowable.FlowableReplay$InnerSubscription<T>);
descriptor: (Lio/reactivex/internal/operators/flowable/FlowableReplay$InnerSubscription;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=14, args_size=2
start local 0 start local 1 0: aload 1
dup
astore 2
monitorenter
1: aload 1
getfield io.reactivex.internal.operators.flowable.FlowableReplay$InnerSubscription.emitting:Z
ifeq 5
2: aload 1
iconst_1
putfield io.reactivex.internal.operators.flowable.FlowableReplay$InnerSubscription.missed:Z
3: aload 2
monitorexit
4: return
5: StackMap locals: io.reactivex.internal.operators.flowable.FlowableReplay$InnerSubscription
StackMap stack:
aload 1
iconst_1
putfield io.reactivex.internal.operators.flowable.FlowableReplay$InnerSubscription.emitting:Z
6: aload 2
monitorexit
7: goto 10
StackMap locals:
StackMap stack: java.lang.Throwable
8: aload 2
monitorexit
9: athrow
10: StackMap locals:
StackMap stack:
aload 1
getfield io.reactivex.internal.operators.flowable.FlowableReplay$InnerSubscription.child:Lorg/reactivestreams/Subscriber;
astore 2
start local 2 11: StackMap locals: org.reactivestreams.Subscriber
StackMap stack:
aload 1
invokevirtual io.reactivex.internal.operators.flowable.FlowableReplay$InnerSubscription.isDisposed:()Z
ifeq 13
12: return
13: StackMap locals:
StackMap stack:
aload 0
getfield io.reactivex.internal.operators.flowable.FlowableReplay$UnboundedReplayBuffer.size:I
istore 3
start local 3 14: aload 1
invokevirtual io.reactivex.internal.operators.flowable.FlowableReplay$InnerSubscription.index:()Ljava/lang/Object;
checkcast java.lang.Integer
astore 4
start local 4 15: aload 4
ifnull 16
aload 4
invokevirtual java.lang.Integer.intValue:()I
goto 17
StackMap locals: int java.lang.Integer
StackMap stack:
16: iconst_0
StackMap locals:
StackMap stack: int
17: istore 5
start local 5 18: aload 1
invokevirtual io.reactivex.internal.operators.flowable.FlowableReplay$InnerSubscription.get:()J
lstore 6
start local 6 19: lload 6
lstore 8
start local 8 20: lconst_0
lstore 10
start local 10 21: goto 36
22: StackMap locals: io.reactivex.internal.operators.flowable.FlowableReplay$UnboundedReplayBuffer io.reactivex.internal.operators.flowable.FlowableReplay$InnerSubscription org.reactivestreams.Subscriber int java.lang.Integer int long long long
StackMap stack:
aload 0
iload 5
invokevirtual io.reactivex.internal.operators.flowable.FlowableReplay$UnboundedReplayBuffer.get:(I)Ljava/lang/Object;
astore 12
start local 12 23: aload 12
aload 2
invokestatic io.reactivex.internal.util.NotificationLite.accept:(Ljava/lang/Object;Lorg/reactivestreams/Subscriber;)Z
ifeq 31
24: return
25: StackMap locals: io.reactivex.internal.operators.flowable.FlowableReplay$UnboundedReplayBuffer io.reactivex.internal.operators.flowable.FlowableReplay$InnerSubscription org.reactivestreams.Subscriber int java.lang.Integer int long long long java.lang.Object
StackMap stack: java.lang.Throwable
astore 13
start local 13 26: aload 13
invokestatic io.reactivex.exceptions.Exceptions.throwIfFatal:(Ljava/lang/Throwable;)V
27: aload 1
invokevirtual io.reactivex.internal.operators.flowable.FlowableReplay$InnerSubscription.dispose:()V
28: aload 12
invokestatic io.reactivex.internal.util.NotificationLite.isError:(Ljava/lang/Object;)Z
ifne 30
aload 12
invokestatic io.reactivex.internal.util.NotificationLite.isComplete:(Ljava/lang/Object;)Z
ifne 30
29: aload 2
aload 13
invokeinterface org.reactivestreams.Subscriber.onError:(Ljava/lang/Throwable;)V
30: StackMap locals: java.lang.Throwable
StackMap stack:
return
end local 13 31: StackMap locals:
StackMap stack:
aload 1
invokevirtual io.reactivex.internal.operators.flowable.FlowableReplay$InnerSubscription.isDisposed:()Z
ifeq 33
32: return
33: StackMap locals:
StackMap stack:
iinc 5 1
34: lload 6
lconst_1
lsub
lstore 6
35: lload 10
lconst_1
ladd
lstore 10
end local 12 36: StackMap locals:
StackMap stack:
lload 6
lconst_0
lcmp
ifeq 37
iload 5
iload 3
if_icmplt 22
37: StackMap locals:
StackMap stack:
lload 10
lconst_0
lcmp
ifeq 41
38: aload 1
iload 5
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
putfield io.reactivex.internal.operators.flowable.FlowableReplay$InnerSubscription.index:Ljava/lang/Object;
39: lload 8
ldc 9223372036854775807
lcmp
ifeq 41
40: aload 1
lload 10
invokevirtual io.reactivex.internal.operators.flowable.FlowableReplay$InnerSubscription.produced:(J)J
pop2
41: StackMap locals:
StackMap stack:
aload 1
dup
astore 12
monitorenter
42: aload 1
getfield io.reactivex.internal.operators.flowable.FlowableReplay$InnerSubscription.missed:Z
ifne 46
43: aload 1
iconst_0
putfield io.reactivex.internal.operators.flowable.FlowableReplay$InnerSubscription.emitting:Z
44: aload 12
monitorexit
45: return
46: StackMap locals: io.reactivex.internal.operators.flowable.FlowableReplay$InnerSubscription
StackMap stack:
aload 1
iconst_0
putfield io.reactivex.internal.operators.flowable.FlowableReplay$InnerSubscription.missed:Z
47: aload 12
monitorexit
48: goto 11
StackMap locals:
StackMap stack: java.lang.Throwable
49: aload 12
monitorexit
50: athrow
end local 10 end local 8 end local 6 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 51 0 this Lio/reactivex/internal/operators/flowable/FlowableReplay$UnboundedReplayBuffer<TT;>;
0 51 1 output Lio/reactivex/internal/operators/flowable/FlowableReplay$InnerSubscription<TT;>;
11 51 2 child Lorg/reactivestreams/Subscriber<-TT;>;
14 51 3 sourceIndex I
15 51 4 destinationIndexObject Ljava/lang/Integer;
18 51 5 destinationIndex I
19 51 6 r J
20 51 8 r0 J
21 51 10 e J
23 36 12 o Ljava/lang/Object;
26 31 13 err Ljava/lang/Throwable;
Exception table:
from to target type
1 4 8 any
5 7 8 any
8 9 8 any
23 24 25 Class java.lang.Throwable
42 45 49 any
46 48 49 any
49 50 49 any
Signature: (Lio/reactivex/internal/operators/flowable/FlowableReplay$InnerSubscription<TT;>;)V
MethodParameters:
Name Flags
output
}
Signature: <T:Ljava/lang/Object;>Ljava/util/ArrayList<Ljava/lang/Object;>;Lio/reactivex/internal/operators/flowable/FlowableReplay$ReplayBuffer<TT;>;
SourceFile: "FlowableReplay.java"
NestHost: io.reactivex.internal.operators.flowable.FlowableReplay
InnerClasses:
final InnerSubscription = io.reactivex.internal.operators.flowable.FlowableReplay$InnerSubscription of io.reactivex.internal.operators.flowable.FlowableReplay
abstract ReplayBuffer = io.reactivex.internal.operators.flowable.FlowableReplay$ReplayBuffer of io.reactivex.internal.operators.flowable.FlowableReplay
final UnboundedReplayBuffer = io.reactivex.internal.operators.flowable.FlowableReplay$UnboundedReplayBuffer of io.reactivex.internal.operators.flowable.FlowableReplay