public class io.reactivex.internal.subscriptions.DeferredScalarSubscription<T> extends io.reactivex.internal.subscriptions.BasicIntQueueSubscription<T>
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: io.reactivex.internal.subscriptions.DeferredScalarSubscription
super_class: io.reactivex.internal.subscriptions.BasicIntQueueSubscription
{
private static final long serialVersionUID;
descriptor: J
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: -2151279923272604993
protected final org.reactivestreams.Subscriber<? super T> downstream;
descriptor: Lorg/reactivestreams/Subscriber;
flags: (0x0014) ACC_PROTECTED, ACC_FINAL
Signature: Lorg/reactivestreams/Subscriber<-TT;>;
protected T value;
descriptor: Ljava/lang/Object;
flags: (0x0004) ACC_PROTECTED
Signature: TT;
static final int NO_REQUEST_NO_VALUE;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 0
static final int NO_REQUEST_HAS_VALUE;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 1
static final int HAS_REQUEST_NO_VALUE;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 2
static final int HAS_REQUEST_HAS_VALUE;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 3
static final int CANCELLED;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 4
static final int FUSED_EMPTY;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 8
static final int FUSED_READY;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 16
static final int FUSED_CONSUMED;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 32
public void <init>(org.reactivestreams.Subscriber<? super T>);
descriptor: (Lorg/reactivestreams/Subscriber;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokespecial io.reactivex.internal.subscriptions.BasicIntQueueSubscription.<init>:()V
1: aload 0
aload 1
putfield io.reactivex.internal.subscriptions.DeferredScalarSubscription.downstream:Lorg/reactivestreams/Subscriber;
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lio/reactivex/internal/subscriptions/DeferredScalarSubscription<TT;>;
0 3 1 downstream Lorg/reactivestreams/Subscriber<-TT;>;
Signature: (Lorg/reactivestreams/Subscriber<-TT;>;)V
MethodParameters:
Name Flags
downstream
public final void request(long);
descriptor: (J)V
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=3, locals=6, args_size=2
start local 0 start local 1 0: lload 1
invokestatic io.reactivex.internal.subscriptions.SubscriptionHelper.validate:(J)Z
ifeq 16
1: StackMap locals:
StackMap stack:
aload 0
invokevirtual io.reactivex.internal.subscriptions.DeferredScalarSubscription.get:()I
istore 3
start local 3 2: iload 3
bipush -2
iand
ifeq 4
3: return
4: StackMap locals: int
StackMap stack:
iload 3
iconst_1
if_icmpne 14
5: aload 0
iconst_1
iconst_3
invokevirtual io.reactivex.internal.subscriptions.DeferredScalarSubscription.compareAndSet:(II)Z
ifeq 13
6: aload 0
getfield io.reactivex.internal.subscriptions.DeferredScalarSubscription.value:Ljava/lang/Object;
astore 4
start local 4 7: aload 4
ifnull 13
8: aload 0
aconst_null
putfield io.reactivex.internal.subscriptions.DeferredScalarSubscription.value:Ljava/lang/Object;
9: aload 0
getfield io.reactivex.internal.subscriptions.DeferredScalarSubscription.downstream:Lorg/reactivestreams/Subscriber;
astore 5
start local 5 10: aload 5
aload 4
invokeinterface org.reactivestreams.Subscriber.onNext:(Ljava/lang/Object;)V
11: aload 0
invokevirtual io.reactivex.internal.subscriptions.DeferredScalarSubscription.get:()I
iconst_4
if_icmpeq 13
12: aload 5
invokeinterface org.reactivestreams.Subscriber.onComplete:()V
end local 5 end local 4 13: StackMap locals:
StackMap stack:
return
14: StackMap locals:
StackMap stack:
aload 0
iconst_0
iconst_2
invokevirtual io.reactivex.internal.subscriptions.DeferredScalarSubscription.compareAndSet:(II)Z
ifeq 1
15: return
end local 3 16: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 17 0 this Lio/reactivex/internal/subscriptions/DeferredScalarSubscription<TT;>;
0 17 1 n J
2 16 3 state I
7 13 4 v TT;
10 13 5 a Lorg/reactivestreams/Subscriber<-TT;>;
MethodParameters:
Name Flags
n
public final void complete();
descriptor: (Ljava/lang/Object;)V
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=3, locals=4, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual io.reactivex.internal.subscriptions.DeferredScalarSubscription.get:()I
istore 2
start local 2 1: StackMap locals: int
StackMap stack:
iload 2
bipush 8
if_icmpne 9
2: aload 0
aload 1
putfield io.reactivex.internal.subscriptions.DeferredScalarSubscription.value:Ljava/lang/Object;
3: aload 0
bipush 16
invokevirtual io.reactivex.internal.subscriptions.DeferredScalarSubscription.lazySet:(I)V
4: aload 0
getfield io.reactivex.internal.subscriptions.DeferredScalarSubscription.downstream:Lorg/reactivestreams/Subscriber;
astore 3
start local 3 5: aload 3
aload 1
invokeinterface org.reactivestreams.Subscriber.onNext:(Ljava/lang/Object;)V
6: aload 0
invokevirtual io.reactivex.internal.subscriptions.DeferredScalarSubscription.get:()I
iconst_4
if_icmpeq 8
7: aload 3
invokeinterface org.reactivestreams.Subscriber.onComplete:()V
8: StackMap locals: org.reactivestreams.Subscriber
StackMap stack:
return
end local 3 9: StackMap locals:
StackMap stack:
iload 2
bipush -3
iand
ifeq 11
10: return
11: StackMap locals:
StackMap stack:
iload 2
iconst_2
if_icmpne 18
12: aload 0
iconst_3
invokevirtual io.reactivex.internal.subscriptions.DeferredScalarSubscription.lazySet:(I)V
13: aload 0
getfield io.reactivex.internal.subscriptions.DeferredScalarSubscription.downstream:Lorg/reactivestreams/Subscriber;
astore 3
start local 3 14: aload 3
aload 1
invokeinterface org.reactivestreams.Subscriber.onNext:(Ljava/lang/Object;)V
15: aload 0
invokevirtual io.reactivex.internal.subscriptions.DeferredScalarSubscription.get:()I
iconst_4
if_icmpeq 17
16: aload 3
invokeinterface org.reactivestreams.Subscriber.onComplete:()V
17: StackMap locals: org.reactivestreams.Subscriber
StackMap stack:
return
end local 3 18: StackMap locals:
StackMap stack:
aload 0
aload 1
putfield io.reactivex.internal.subscriptions.DeferredScalarSubscription.value:Ljava/lang/Object;
19: aload 0
iconst_0
iconst_1
invokevirtual io.reactivex.internal.subscriptions.DeferredScalarSubscription.compareAndSet:(II)Z
ifeq 21
20: return
21: StackMap locals:
StackMap stack:
aload 0
invokevirtual io.reactivex.internal.subscriptions.DeferredScalarSubscription.get:()I
istore 2
22: iload 2
iconst_4
if_icmpne 1
23: aload 0
aconst_null
putfield io.reactivex.internal.subscriptions.DeferredScalarSubscription.value:Ljava/lang/Object;
24: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 25 0 this Lio/reactivex/internal/subscriptions/DeferredScalarSubscription<TT;>;
0 25 1 v TT;
1 25 2 state I
5 9 3 a Lorg/reactivestreams/Subscriber<-TT;>;
14 18 3 a Lorg/reactivestreams/Subscriber<-TT;>;
Signature: (TT;)V
MethodParameters:
Name Flags
v
public final int requestFusion(int);
descriptor: (I)I
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: iload 1
iconst_2
iand
ifeq 3
1: aload 0
bipush 8
invokevirtual io.reactivex.internal.subscriptions.DeferredScalarSubscription.lazySet:(I)V
2: iconst_2
ireturn
3: StackMap locals:
StackMap stack:
iconst_0
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lio/reactivex/internal/subscriptions/DeferredScalarSubscription<TT;>;
0 4 1 mode I
MethodParameters:
Name Flags
mode
public final T poll();
descriptor: ()Ljava/lang/Object;
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=2, locals=2, args_size=1
start local 0 0: aload 0
invokevirtual io.reactivex.internal.subscriptions.DeferredScalarSubscription.get:()I
bipush 16
if_icmpne 5
1: aload 0
bipush 32
invokevirtual io.reactivex.internal.subscriptions.DeferredScalarSubscription.lazySet:(I)V
2: aload 0
getfield io.reactivex.internal.subscriptions.DeferredScalarSubscription.value:Ljava/lang/Object;
astore 1
start local 1 3: aload 0
aconst_null
putfield io.reactivex.internal.subscriptions.DeferredScalarSubscription.value:Ljava/lang/Object;
4: aload 1
areturn
end local 1 5: StackMap locals:
StackMap stack:
aconst_null
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lio/reactivex/internal/subscriptions/DeferredScalarSubscription<TT;>;
3 5 1 v TT;
Signature: ()TT;
RuntimeInvisibleAnnotations:
io.reactivex.annotations.Nullable()
public final boolean isEmpty();
descriptor: ()Z
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual io.reactivex.internal.subscriptions.DeferredScalarSubscription.get:()I
bipush 16
if_icmpeq 1
iconst_1
ireturn
StackMap locals:
StackMap stack:
1: iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lio/reactivex/internal/subscriptions/DeferredScalarSubscription<TT;>;
public final void clear();
descriptor: ()V
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
bipush 32
invokevirtual io.reactivex.internal.subscriptions.DeferredScalarSubscription.lazySet:(I)V
1: aload 0
aconst_null
putfield io.reactivex.internal.subscriptions.DeferredScalarSubscription.value:Ljava/lang/Object;
2: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lio/reactivex/internal/subscriptions/DeferredScalarSubscription<TT;>;
public void cancel();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
iconst_4
invokevirtual io.reactivex.internal.subscriptions.DeferredScalarSubscription.set:(I)V
1: aload 0
aconst_null
putfield io.reactivex.internal.subscriptions.DeferredScalarSubscription.value:Ljava/lang/Object;
2: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lio/reactivex/internal/subscriptions/DeferredScalarSubscription<TT;>;
public final boolean isCancelled();
descriptor: ()Z
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual io.reactivex.internal.subscriptions.DeferredScalarSubscription.get:()I
iconst_4
if_icmpne 1
iconst_1
ireturn
StackMap locals:
StackMap stack:
1: iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lio/reactivex/internal/subscriptions/DeferredScalarSubscription<TT;>;
public final boolean tryCancel();
descriptor: ()Z
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
iconst_4
invokevirtual io.reactivex.internal.subscriptions.DeferredScalarSubscription.getAndSet:(I)I
iconst_4
if_icmpeq 1
iconst_1
ireturn
StackMap locals:
StackMap stack:
1: iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lio/reactivex/internal/subscriptions/DeferredScalarSubscription<TT;>;
}
Signature: <T:Ljava/lang/Object;>Lio/reactivex/internal/subscriptions/BasicIntQueueSubscription<TT;>;
SourceFile: "DeferredScalarSubscription.java"