DeferredScalarDisposable.smali 7.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358
  1. .class public Lio/reactivex/internal/observers/DeferredScalarDisposable;
  2. .super Lio/reactivex/internal/observers/BasicIntQueueDisposable;
  3. .source "DeferredScalarDisposable.java"
  4. # annotations
  5. .annotation system Ldalvik/annotation/Signature;
  6. value = {
  7. "<T:",
  8. "Ljava/lang/Object;",
  9. ">",
  10. "Lio/reactivex/internal/observers/BasicIntQueueDisposable<",
  11. "TT;>;"
  12. }
  13. .end annotation
  14. # static fields
  15. .field static final DISPOSED:I = 0x4
  16. .field static final FUSED_CONSUMED:I = 0x20
  17. .field static final FUSED_EMPTY:I = 0x8
  18. .field static final FUSED_READY:I = 0x10
  19. .field static final TERMINATED:I = 0x2
  20. .field private static final serialVersionUID:J = -0x4c5c90f80ed9d471L
  21. # instance fields
  22. .field protected final actual:Lio/reactivex/Observer;
  23. .annotation system Ldalvik/annotation/Signature;
  24. value = {
  25. "Lio/reactivex/Observer<",
  26. "-TT;>;"
  27. }
  28. .end annotation
  29. .end field
  30. .field protected value:Ljava/lang/Object;
  31. .annotation system Ldalvik/annotation/Signature;
  32. value = {
  33. "TT;"
  34. }
  35. .end annotation
  36. .end field
  37. # direct methods
  38. .method public constructor <init>(Lio/reactivex/Observer;)V
  39. .locals 0
  40. .annotation system Ldalvik/annotation/Signature;
  41. value = {
  42. "(",
  43. "Lio/reactivex/Observer<",
  44. "-TT;>;)V"
  45. }
  46. .end annotation
  47. .line 51
  48. invoke-direct {p0}, Lio/reactivex/internal/observers/BasicIntQueueDisposable;-><init>()V
  49. .line 52
  50. iput-object p1, p0, Lio/reactivex/internal/observers/DeferredScalarDisposable;->actual:Lio/reactivex/Observer;
  51. return-void
  52. .end method
  53. # virtual methods
  54. .method public final clear()V
  55. .locals 1
  56. const/16 v0, 0x20
  57. .line 131
  58. invoke-virtual {p0, v0}, Lio/reactivex/internal/observers/DeferredScalarDisposable;->lazySet(I)V
  59. const/4 v0, 0x0
  60. .line 132
  61. iput-object v0, p0, Lio/reactivex/internal/observers/DeferredScalarDisposable;->value:Ljava/lang/Object;
  62. return-void
  63. .end method
  64. .method public final complete()V
  65. .locals 1
  66. .line 105
  67. invoke-virtual {p0}, Lio/reactivex/internal/observers/DeferredScalarDisposable;->get()I
  68. move-result v0
  69. and-int/lit8 v0, v0, 0x36
  70. if-eqz v0, :cond_0
  71. return-void
  72. :cond_0
  73. const/4 v0, 0x2
  74. .line 109
  75. invoke-virtual {p0, v0}, Lio/reactivex/internal/observers/DeferredScalarDisposable;->lazySet(I)V
  76. .line 110
  77. iget-object v0, p0, Lio/reactivex/internal/observers/DeferredScalarDisposable;->actual:Lio/reactivex/Observer;
  78. invoke-interface {v0}, Lio/reactivex/Observer;->onComplete()V
  79. return-void
  80. .end method
  81. .method public final complete(Ljava/lang/Object;)V
  82. .locals 2
  83. .annotation system Ldalvik/annotation/Signature;
  84. value = {
  85. "(TT;)V"
  86. }
  87. .end annotation
  88. .line 70
  89. invoke-virtual {p0}, Lio/reactivex/internal/observers/DeferredScalarDisposable;->get()I
  90. move-result v0
  91. and-int/lit8 v1, v0, 0x36
  92. if-eqz v1, :cond_0
  93. return-void
  94. :cond_0
  95. const/16 v1, 0x8
  96. if-ne v0, v1, :cond_1
  97. .line 75
  98. iput-object p1, p0, Lio/reactivex/internal/observers/DeferredScalarDisposable;->value:Ljava/lang/Object;
  99. const/16 v0, 0x10
  100. .line 76
  101. invoke-virtual {p0, v0}, Lio/reactivex/internal/observers/DeferredScalarDisposable;->lazySet(I)V
  102. goto :goto_0
  103. :cond_1
  104. const/4 v0, 0x2
  105. .line 78
  106. invoke-virtual {p0, v0}, Lio/reactivex/internal/observers/DeferredScalarDisposable;->lazySet(I)V
  107. .line 80
  108. :goto_0
  109. iget-object v0, p0, Lio/reactivex/internal/observers/DeferredScalarDisposable;->actual:Lio/reactivex/Observer;
  110. .line 81
  111. invoke-interface {v0, p1}, Lio/reactivex/Observer;->onNext(Ljava/lang/Object;)V
  112. .line 82
  113. invoke-virtual {p0}, Lio/reactivex/internal/observers/DeferredScalarDisposable;->get()I
  114. move-result p1
  115. const/4 v1, 0x4
  116. if-eq p1, v1, :cond_2
  117. .line 83
  118. invoke-interface {v0}, Lio/reactivex/Observer;->onComplete()V
  119. :cond_2
  120. return-void
  121. .end method
  122. .method public dispose()V
  123. .locals 1
  124. const/4 v0, 0x4
  125. .line 137
  126. invoke-virtual {p0, v0}, Lio/reactivex/internal/observers/DeferredScalarDisposable;->set(I)V
  127. const/4 v0, 0x0
  128. .line 138
  129. iput-object v0, p0, Lio/reactivex/internal/observers/DeferredScalarDisposable;->value:Ljava/lang/Object;
  130. return-void
  131. .end method
  132. .method public final error(Ljava/lang/Throwable;)V
  133. .locals 1
  134. .line 92
  135. invoke-virtual {p0}, Lio/reactivex/internal/observers/DeferredScalarDisposable;->get()I
  136. move-result v0
  137. and-int/lit8 v0, v0, 0x36
  138. if-eqz v0, :cond_0
  139. .line 94
  140. invoke-static {p1}, Lio/reactivex/plugins/RxJavaPlugins;->onError(Ljava/lang/Throwable;)V
  141. return-void
  142. :cond_0
  143. const/4 v0, 0x2
  144. .line 97
  145. invoke-virtual {p0, v0}, Lio/reactivex/internal/observers/DeferredScalarDisposable;->lazySet(I)V
  146. .line 98
  147. iget-object v0, p0, Lio/reactivex/internal/observers/DeferredScalarDisposable;->actual:Lio/reactivex/Observer;
  148. invoke-interface {v0, p1}, Lio/reactivex/Observer;->onError(Ljava/lang/Throwable;)V
  149. return-void
  150. .end method
  151. .method public final isDisposed()Z
  152. .locals 2
  153. .line 151
  154. invoke-virtual {p0}, Lio/reactivex/internal/observers/DeferredScalarDisposable;->get()I
  155. move-result v0
  156. const/4 v1, 0x4
  157. if-ne v0, v1, :cond_0
  158. const/4 v0, 0x1
  159. goto :goto_0
  160. :cond_0
  161. const/4 v0, 0x0
  162. :goto_0
  163. return v0
  164. .end method
  165. .method public final isEmpty()Z
  166. .locals 2
  167. .line 126
  168. invoke-virtual {p0}, Lio/reactivex/internal/observers/DeferredScalarDisposable;->get()I
  169. move-result v0
  170. const/16 v1, 0x10
  171. if-eq v0, v1, :cond_0
  172. const/4 v0, 0x1
  173. goto :goto_0
  174. :cond_0
  175. const/4 v0, 0x0
  176. :goto_0
  177. return v0
  178. .end method
  179. .method public final poll()Ljava/lang/Object;
  180. .locals 3
  181. .annotation system Ldalvik/annotation/Signature;
  182. value = {
  183. "()TT;"
  184. }
  185. .end annotation
  186. .annotation system Ldalvik/annotation/Throws;
  187. value = {
  188. Ljava/lang/Exception;
  189. }
  190. .end annotation
  191. .line 115
  192. invoke-virtual {p0}, Lio/reactivex/internal/observers/DeferredScalarDisposable;->get()I
  193. move-result v0
  194. const/4 v1, 0x0
  195. const/16 v2, 0x10
  196. if-ne v0, v2, :cond_0
  197. .line 116
  198. iget-object v0, p0, Lio/reactivex/internal/observers/DeferredScalarDisposable;->value:Ljava/lang/Object;
  199. .line 117
  200. iput-object v1, p0, Lio/reactivex/internal/observers/DeferredScalarDisposable;->value:Ljava/lang/Object;
  201. const/16 v1, 0x20
  202. .line 118
  203. invoke-virtual {p0, v1}, Lio/reactivex/internal/observers/DeferredScalarDisposable;->lazySet(I)V
  204. return-object v0
  205. :cond_0
  206. return-object v1
  207. .end method
  208. .method public final requestFusion(I)I
  209. .locals 1
  210. const/4 v0, 0x2
  211. and-int/2addr p1, v0
  212. if-eqz p1, :cond_0
  213. const/16 p1, 0x8
  214. .line 58
  215. invoke-virtual {p0, p1}, Lio/reactivex/internal/observers/DeferredScalarDisposable;->lazySet(I)V
  216. return v0
  217. :cond_0
  218. const/4 p1, 0x0
  219. return p1
  220. .end method
  221. .method public final tryDispose()Z
  222. .locals 2
  223. const/4 v0, 0x4
  224. .line 146
  225. invoke-virtual {p0, v0}, Lio/reactivex/internal/observers/DeferredScalarDisposable;->getAndSet(I)I
  226. move-result v1
  227. if-eq v1, v0, :cond_0
  228. const/4 v0, 0x1
  229. goto :goto_0
  230. :cond_0
  231. const/4 v0, 0x0
  232. :goto_0
  233. return v0
  234. .end method