public final class io.reactivex.disposables.SerialDisposable implements io.reactivex.disposables.Disposable
minor version: 0
major version: 59
flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
this_class: io.reactivex.disposables.SerialDisposable
super_class: java.lang.Object
{
final java.util.concurrent.atomic.AtomicReference<io.reactivex.disposables.Disposable> resource;
descriptor: Ljava/util/concurrent/atomic/AtomicReference;
flags: (0x0010) ACC_FINAL
Signature: Ljava/util/concurrent/atomic/AtomicReference<Lio/reactivex/disposables/Disposable;>;
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
new java.util.concurrent.atomic.AtomicReference
dup
invokespecial java.util.concurrent.atomic.AtomicReference.<init>:()V
putfield io.reactivex.disposables.SerialDisposable.resource:Ljava/util/concurrent/atomic/AtomicReference;
2: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lio/reactivex/disposables/SerialDisposable;
public void <init>(io.reactivex.disposables.Disposable);
descriptor: (Lio/reactivex/disposables/Disposable;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
new java.util.concurrent.atomic.AtomicReference
dup
aload 1
invokespecial java.util.concurrent.atomic.AtomicReference.<init>:(Ljava/lang/Object;)V
putfield io.reactivex.disposables.SerialDisposable.resource:Ljava/util/concurrent/atomic/AtomicReference;
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lio/reactivex/disposables/SerialDisposable;
0 3 1 initialDisposable Lio/reactivex/disposables/Disposable;
RuntimeInvisibleParameterAnnotations:
0:
io.reactivex.annotations.Nullable()
MethodParameters:
Name Flags
initialDisposable
public boolean set(io.reactivex.disposables.Disposable);
descriptor: (Lio/reactivex/disposables/Disposable;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield io.reactivex.disposables.SerialDisposable.resource:Ljava/util/concurrent/atomic/AtomicReference;
aload 1
invokestatic io.reactivex.internal.disposables.DisposableHelper.set:(Ljava/util/concurrent/atomic/AtomicReference;Lio/reactivex/disposables/Disposable;)Z
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lio/reactivex/disposables/SerialDisposable;
0 1 1 next Lio/reactivex/disposables/Disposable;
RuntimeInvisibleParameterAnnotations:
0:
io.reactivex.annotations.Nullable()
MethodParameters:
Name Flags
next
public boolean replace(io.reactivex.disposables.Disposable);
descriptor: (Lio/reactivex/disposables/Disposable;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield io.reactivex.disposables.SerialDisposable.resource:Ljava/util/concurrent/atomic/AtomicReference;
aload 1
invokestatic io.reactivex.internal.disposables.DisposableHelper.replace:(Ljava/util/concurrent/atomic/AtomicReference;Lio/reactivex/disposables/Disposable;)Z
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lio/reactivex/disposables/SerialDisposable;
0 1 1 next Lio/reactivex/disposables/Disposable;
RuntimeInvisibleParameterAnnotations:
0:
io.reactivex.annotations.Nullable()
MethodParameters:
Name Flags
next
public io.reactivex.disposables.Disposable get();
descriptor: ()Lio/reactivex/disposables/Disposable;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: aload 0
getfield io.reactivex.disposables.SerialDisposable.resource:Ljava/util/concurrent/atomic/AtomicReference;
invokevirtual java.util.concurrent.atomic.AtomicReference.get:()Ljava/lang/Object;
checkcast io.reactivex.disposables.Disposable
astore 1
start local 1 1: aload 1
getstatic io.reactivex.internal.disposables.DisposableHelper.DISPOSED:Lio/reactivex/internal/disposables/DisposableHelper;
if_acmpne 3
2: invokestatic io.reactivex.disposables.Disposables.disposed:()Lio/reactivex/disposables/Disposable;
areturn
3: StackMap locals: io.reactivex.disposables.Disposable
StackMap stack:
aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lio/reactivex/disposables/SerialDisposable;
1 4 1 d Lio/reactivex/disposables/Disposable;
RuntimeInvisibleAnnotations:
io.reactivex.annotations.Nullable()
public void dispose();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield io.reactivex.disposables.SerialDisposable.resource:Ljava/util/concurrent/atomic/AtomicReference;
invokestatic io.reactivex.internal.disposables.DisposableHelper.dispose:(Ljava/util/concurrent/atomic/AtomicReference;)Z
pop
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lio/reactivex/disposables/SerialDisposable;
public boolean isDisposed();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield io.reactivex.disposables.SerialDisposable.resource:Ljava/util/concurrent/atomic/AtomicReference;
invokevirtual java.util.concurrent.atomic.AtomicReference.get:()Ljava/lang/Object;
checkcast io.reactivex.disposables.Disposable
invokestatic io.reactivex.internal.disposables.DisposableHelper.isDisposed:(Lio/reactivex/disposables/Disposable;)Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lio/reactivex/disposables/SerialDisposable;
}
SourceFile: "SerialDisposable.java"