.class public final Lkotlinx/coroutines/flow/StateFlowImpl; .super Lkotlinx/coroutines/flow/internal/a; .source "StateFlow.kt" # interfaces .implements Lkotlinx/coroutines/flow/n; .implements Lkotlinx/coroutines/flow/a; .implements Lkotlinx/coroutines/flow/internal/k; # annotations .annotation system Ldalvik/annotation/Signature; value = { "", "Lkotlinx/coroutines/flow/internal/a<", "Lkotlinx/coroutines/flow/b0;", ">;", "Lkotlinx/coroutines/flow/n<", "TT;>;", "Lkotlinx/coroutines/flow/a<", "TT;>;", "Lkotlinx/coroutines/flow/internal/k<", "TT;>;" } .end annotation .annotation system Ldalvik/annotation/SourceDebugExtension; value = "SMAP\nStateFlow.kt\nKotlin\n*S Kotlin\n*F\n+ 1 StateFlow.kt\nkotlinx/coroutines/flow/StateFlowImpl\n+ 2 Symbol.kt\nkotlinx/coroutines/internal/Symbol\n+ 3 Synchronized.kt\nkotlinx/coroutines/internal/SynchronizedKt\n+ 4 _Arrays.kt\nkotlin/collections/ArraysKt___ArraysKt\n+ 5 CoroutineScope.kt\nkotlinx/coroutines/CoroutineScopeKt\n*L\n1#1,381:1\n16#2:382\n16#2:388\n20#3:383\n20#3:386\n13416#4,2:384\n259#5:387\n*E\n*S KotlinDebug\n*F\n+ 1 StateFlow.kt\nkotlinx/coroutines/flow/StateFlowImpl\n*L\n261#1:382\n342#1:388\n270#1:383\n298#1:386\n294#1,2:384\n331#1:387\n*E\n" .end annotation .annotation runtime Lkotlin/Metadata; bv = {} d1 = { "\u0000j\n\u0002\u0018\u0002\n\u0000\n\u0002\u0018\u0002\n\u0002\u0018\u0002\n\u0002\u0018\u0002\n\u0002\u0018\u0002\n\u0002\u0018\u0002\n\u0002\u0008\u0002\n\u0002\u0010\u000b\n\u0002\u0008\u0005\n\u0002\u0018\u0002\n\u0002\u0008\u0004\n\u0002\u0018\u0002\n\u0002\u0008\u0005\n\u0002\u0010\u0008\n\u0000\n\u0002\u0010\u0011\n\u0002\u0008\u0002\n\u0002\u0018\u0002\n\u0002\u0008\u0002\n\u0002\u0018\u0002\n\u0000\n\u0002\u0018\u0002\n\u0002\u0008\u0002\n\u0002\u0010\u0000\n\u0002\u0008\n\n\u0002\u0010 \n\u0002\u0008\u0006\u0008\u0002\u0018\u0000*\u0004\u0008\u0000\u0010\u00012\u0008\u0012\u0004\u0012\u00020\u00030\u00022\u0008\u0012\u0004\u0012\u00028\u00000\u00042\u0008\u0012\u0004\u0012\u00028\u00000\u00052\u0008\u0012\u0004\u0012\u00028\u00000\u0006B\u000f\u0012\u0006\u00106\u001a\u00020\'\u00a2\u0006\u0004\u00087\u00100J\u001f\u0010\n\u001a\u00020\t2\u0006\u0010\u0007\u001a\u00028\u00002\u0006\u0010\u0008\u001a\u00028\u0000H\u0016\u00a2\u0006\u0004\u0008\n\u0010\u000bJ\u0017\u0010\r\u001a\u00020\t2\u0006\u0010\u000c\u001a\u00028\u0000H\u0016\u00a2\u0006\u0004\u0008\r\u0010\u000eJ\u001b\u0010\u0010\u001a\u00020\u000f2\u0006\u0010\u000c\u001a\u00028\u0000H\u0096@\u00f8\u0001\u0000\u00a2\u0006\u0004\u0008\u0010\u0010\u0011J\u000f\u0010\u0012\u001a\u00020\u000fH\u0016\u00a2\u0006\u0004\u0008\u0012\u0010\u0013J!\u0010\u0016\u001a\u00020\u000f2\u000c\u0010\u0015\u001a\u0008\u0012\u0004\u0012\u00028\u00000\u0014H\u0096@\u00f8\u0001\u0000\u00a2\u0006\u0004\u0008\u0016\u0010\u0017J\u000f\u0010\u0018\u001a\u00020\u0003H\u0014\u00a2\u0006\u0004\u0008\u0018\u0010\u0019J\u001f\u0010\u001d\u001a\n\u0012\u0006\u0012\u0004\u0018\u00010\u00030\u001c2\u0006\u0010\u001b\u001a\u00020\u001aH\u0014\u00a2\u0006\u0004\u0008\u001d\u0010\u001eJ-\u0010%\u001a\u0008\u0012\u0004\u0012\u00028\u00000$2\u0006\u0010 \u001a\u00020\u001f2\u0006\u0010!\u001a\u00020\u001a2\u0006\u0010#\u001a\u00020\"H\u0016\u00a2\u0006\u0004\u0008%\u0010&J!\u0010*\u001a\u00020\t2\u0008\u0010(\u001a\u0004\u0018\u00010\'2\u0006\u0010)\u001a\u00020\'H\u0002\u00a2\u0006\u0004\u0008*\u0010\u000bR\u0016\u0010,\u001a\u00020\u001a8\u0002@\u0002X\u0082\u000e\u00a2\u0006\u0006\n\u0004\u0008\u0016\u0010+R*\u0010\u000c\u001a\u00028\u00002\u0006\u0010\u000c\u001a\u00028\u00008V@VX\u0096\u000e\u00a2\u0006\u0012\u0012\u0004\u00081\u0010\u0013\u001a\u0004\u0008-\u0010.\"\u0004\u0008/\u00100R\u001a\u00105\u001a\u0008\u0012\u0004\u0012\u00028\u0000028VX\u0096\u0004\u00a2\u0006\u0006\u001a\u0004\u00083\u00104\u0082\u0002\u0004\n\u0002\u0008\u0019\u00a8\u00068" } d2 = { "Lkotlinx/coroutines/flow/StateFlowImpl;", "T", "Lkotlinx/coroutines/flow/internal/a;", "Lkotlinx/coroutines/flow/b0;", "Lkotlinx/coroutines/flow/n;", "Lkotlinx/coroutines/flow/a;", "Lkotlinx/coroutines/flow/internal/k;", "expect", "update", "", "compareAndSet", "(Ljava/lang/Object;Ljava/lang/Object;)Z", "value", "b", "(Ljava/lang/Object;)Z", "Lkotlin/d1;", "emit", "(Ljava/lang/Object;Lkotlin/coroutines/c;)Ljava/lang/Object;", "i", "()V", "Lkotlinx/coroutines/flow/g;", "collector", "e", "(Lkotlinx/coroutines/flow/g;Lkotlin/coroutines/c;)Ljava/lang/Object;", "s", "()Lkotlinx/coroutines/flow/b0;", "", "size", "", "t", "(I)[Lkotlinx/coroutines/flow/b0;", "Lkotlin/coroutines/CoroutineContext;", "context", "capacity", "Lkotlinx/coroutines/channels/BufferOverflow;", "onBufferOverflow", "Lkotlinx/coroutines/flow/f;", "a", "(Lkotlin/coroutines/CoroutineContext;ILkotlinx/coroutines/channels/BufferOverflow;)Lkotlinx/coroutines/flow/f;", "", "expectedState", "newState", "v", "I", "sequence", "getValue", "()Ljava/lang/Object;", "setValue", "(Ljava/lang/Object;)V", "getValue$annotations", "", "d", "()Ljava/util/List;", "replayCache", "initialState", "", "kotlinx-coroutines-core" } k = 0x1 mv = { 0x1, 0x4, 0x0 } .end annotation # instance fields .field private volatile _state:Ljava/lang/Object; .field public e:I # direct methods .method public constructor (Ljava/lang/Object;)V .locals 0 .param p1 # Ljava/lang/Object; .annotation build Lorg/jetbrains/annotations/NotNull; .end annotation .end param .line 1 invoke-direct {p0}, Lkotlinx/coroutines/flow/internal/a;->()V .line 2 iput-object p1, p0, Lkotlinx/coroutines/flow/StateFlowImpl;->_state:Ljava/lang/Object; return-void .end method .method public static synthetic u()V .locals 0 return-void .end method # virtual methods .method public a(Lkotlin/coroutines/CoroutineContext;ILkotlinx/coroutines/channels/BufferOverflow;)Lkotlinx/coroutines/flow/f; .locals 0 .param p1 # Lkotlin/coroutines/CoroutineContext; .annotation build Lorg/jetbrains/annotations/NotNull; .end annotation .end param .param p3 # Lkotlinx/coroutines/channels/BufferOverflow; .annotation build Lorg/jetbrains/annotations/NotNull; .end annotation .end param .annotation system Ldalvik/annotation/Signature; value = { "(", "Lkotlin/coroutines/CoroutineContext;", "I", "Lkotlinx/coroutines/channels/BufferOverflow;", ")", "Lkotlinx/coroutines/flow/f<", "TT;>;" } .end annotation .annotation build Lorg/jetbrains/annotations/NotNull; .end annotation .line 1 invoke-static {p0, p1, p2, p3}, Lkotlinx/coroutines/flow/a0;->d(Lkotlinx/coroutines/flow/z;Lkotlin/coroutines/CoroutineContext;ILkotlinx/coroutines/channels/BufferOverflow;)Lkotlinx/coroutines/flow/f; move-result-object p1 return-object p1 .end method .method public b(Ljava/lang/Object;)Z .locals 0 .annotation system Ldalvik/annotation/Signature; value = { "(TT;)Z" } .end annotation .line 1 invoke-virtual {p0, p1}, Lkotlinx/coroutines/flow/StateFlowImpl;->setValue(Ljava/lang/Object;)V const/4 p1, 0x1 return p1 .end method .method public compareAndSet(Ljava/lang/Object;Ljava/lang/Object;)Z .locals 0 .annotation system Ldalvik/annotation/Signature; value = { "(TT;TT;)Z" } .end annotation if-eqz p1, :cond_0 goto :goto_0 .line 1 :cond_0 sget-object p1, Lkotlinx/coroutines/flow/internal/n;->a:Lkotlinx/coroutines/internal/i0; :goto_0 if-eqz p2, :cond_1 goto :goto_1 :cond_1 sget-object p2, Lkotlinx/coroutines/flow/internal/n;->a:Lkotlinx/coroutines/internal/i0; :goto_1 invoke-virtual {p0, p1, p2}, Lkotlinx/coroutines/flow/StateFlowImpl;->v(Ljava/lang/Object;Ljava/lang/Object;)Z move-result p1 return p1 .end method .method public d()Ljava/util/List; .locals 1 .annotation system Ldalvik/annotation/Signature; value = { "()", "Ljava/util/List<", "TT;>;" } .end annotation .annotation build Lorg/jetbrains/annotations/NotNull; .end annotation .line 1 invoke-virtual {p0}, Lkotlinx/coroutines/flow/StateFlowImpl;->getValue()Ljava/lang/Object; move-result-object v0 invoke-static {v0}, Lkotlin/collections/w;->k(Ljava/lang/Object;)Ljava/util/List; move-result-object v0 return-object v0 .end method .method public e(Lkotlinx/coroutines/flow/g;Lkotlin/coroutines/c;)Ljava/lang/Object; .locals 11 .param p1 # Lkotlinx/coroutines/flow/g; .annotation build Lorg/jetbrains/annotations/NotNull; .end annotation .end param .param p2 # Lkotlin/coroutines/c; .annotation build Lorg/jetbrains/annotations/NotNull; .end annotation .end param .annotation system Ldalvik/annotation/Signature; value = { "(", "Lkotlinx/coroutines/flow/g<", "-TT;>;", "Lkotlin/coroutines/c<", "-", "Lkotlin/d1;", ">;)", "Ljava/lang/Object;" } .end annotation .annotation build Lorg/jetbrains/annotations/Nullable; .end annotation instance-of v0, p2, Lkotlinx/coroutines/flow/StateFlowImpl$collect$1; if-eqz v0, :cond_0 move-object v0, p2 check-cast v0, Lkotlinx/coroutines/flow/StateFlowImpl$collect$1; iget v1, v0, Lkotlinx/coroutines/flow/StateFlowImpl$collect$1;->label:I const/high16 v2, -0x80000000 and-int v3, v1, v2 if-eqz v3, :cond_0 sub-int/2addr v1, v2 iput v1, v0, Lkotlinx/coroutines/flow/StateFlowImpl$collect$1;->label:I goto :goto_0 :cond_0 new-instance v0, Lkotlinx/coroutines/flow/StateFlowImpl$collect$1; invoke-direct {v0, p0, p2}, Lkotlinx/coroutines/flow/StateFlowImpl$collect$1;->(Lkotlinx/coroutines/flow/StateFlowImpl;Lkotlin/coroutines/c;)V :goto_0 iget-object p2, v0, Lkotlinx/coroutines/flow/StateFlowImpl$collect$1;->result:Ljava/lang/Object; invoke-static {}, Lvi/b;->h()Ljava/lang/Object; move-result-object v1 .line 1 iget v2, v0, Lkotlinx/coroutines/flow/StateFlowImpl$collect$1;->label:I const/4 v3, 0x0 const/4 v4, 0x3 const/4 v5, 0x2 const/4 v6, 0x1 if-eqz v2, :cond_4 if-eq v2, v6, :cond_3 if-eq v2, v5, :cond_2 if-ne v2, v4, :cond_1 iget-object p1, v0, Lkotlinx/coroutines/flow/StateFlowImpl$collect$1;->L$4:Ljava/lang/Object; iget-object v2, v0, Lkotlinx/coroutines/flow/StateFlowImpl$collect$1;->L$3:Ljava/lang/Object; check-cast v2, Lkotlinx/coroutines/y1; iget-object v7, v0, Lkotlinx/coroutines/flow/StateFlowImpl$collect$1;->L$2:Ljava/lang/Object; check-cast v7, Lkotlinx/coroutines/flow/b0; iget-object v8, v0, Lkotlinx/coroutines/flow/StateFlowImpl$collect$1;->L$1:Ljava/lang/Object; check-cast v8, Lkotlinx/coroutines/flow/g; iget-object v9, v0, Lkotlinx/coroutines/flow/StateFlowImpl$collect$1;->L$0:Ljava/lang/Object; check-cast v9, Lkotlinx/coroutines/flow/StateFlowImpl; :try_start_0 invoke-static {p2}, Lkotlin/d0;->n(Ljava/lang/Object;)V :try_end_0 .catchall {:try_start_0 .. :try_end_0} :catchall_0 goto :goto_2 .line 2 :cond_1 new-instance p1, Ljava/lang/IllegalStateException; const-string p2, "call to \'resume\' before \'invoke\' with coroutine" invoke-direct {p1, p2}, Ljava/lang/IllegalStateException;->(Ljava/lang/String;)V throw p1 .line 3 :cond_2 iget-object p1, v0, Lkotlinx/coroutines/flow/StateFlowImpl$collect$1;->L$5:Ljava/lang/Object; iget-object v2, v0, Lkotlinx/coroutines/flow/StateFlowImpl$collect$1;->L$3:Ljava/lang/Object; check-cast v2, Lkotlinx/coroutines/y1; iget-object v7, v0, Lkotlinx/coroutines/flow/StateFlowImpl$collect$1;->L$2:Ljava/lang/Object; check-cast v7, Lkotlinx/coroutines/flow/b0; iget-object v8, v0, Lkotlinx/coroutines/flow/StateFlowImpl$collect$1;->L$1:Ljava/lang/Object; check-cast v8, Lkotlinx/coroutines/flow/g; iget-object v9, v0, Lkotlinx/coroutines/flow/StateFlowImpl$collect$1;->L$0:Ljava/lang/Object; check-cast v9, Lkotlinx/coroutines/flow/StateFlowImpl; :try_start_1 invoke-static {p2}, Lkotlin/d0;->n(Ljava/lang/Object;)V :try_end_1 .catchall {:try_start_1 .. :try_end_1} :catchall_0 goto/16 :goto_4 :cond_3 iget-object p1, v0, Lkotlinx/coroutines/flow/StateFlowImpl$collect$1;->L$2:Ljava/lang/Object; move-object v7, p1 check-cast v7, Lkotlinx/coroutines/flow/b0; iget-object p1, v0, Lkotlinx/coroutines/flow/StateFlowImpl$collect$1;->L$1:Ljava/lang/Object; check-cast p1, Lkotlinx/coroutines/flow/g; iget-object v2, v0, Lkotlinx/coroutines/flow/StateFlowImpl$collect$1;->L$0:Ljava/lang/Object; move-object v9, v2 check-cast v9, Lkotlinx/coroutines/flow/StateFlowImpl; :try_start_2 invoke-static {p2}, Lkotlin/d0;->n(Ljava/lang/Object;)V :try_end_2 .catchall {:try_start_2 .. :try_end_2} :catchall_0 goto :goto_1 :catchall_0 move-exception p1 goto/16 :goto_5 :cond_4 invoke-static {p2}, Lkotlin/d0;->n(Ljava/lang/Object;)V .line 4 invoke-virtual {p0}, Lkotlinx/coroutines/flow/internal/a;->k()Lkotlinx/coroutines/flow/internal/c; move-result-object p2 move-object v7, p2 check-cast v7, Lkotlinx/coroutines/flow/b0; .line 5 :try_start_3 instance-of p2, p1, Lkotlinx/coroutines/flow/SubscribedFlowCollector; if-eqz p2, :cond_5 move-object p2, p1 check-cast p2, Lkotlinx/coroutines/flow/SubscribedFlowCollector; iput-object p0, v0, Lkotlinx/coroutines/flow/StateFlowImpl$collect$1;->L$0:Ljava/lang/Object; iput-object p1, v0, Lkotlinx/coroutines/flow/StateFlowImpl$collect$1;->L$1:Ljava/lang/Object; iput-object v7, v0, Lkotlinx/coroutines/flow/StateFlowImpl$collect$1;->L$2:Ljava/lang/Object; iput v6, v0, Lkotlinx/coroutines/flow/StateFlowImpl$collect$1;->label:I invoke-virtual {p2, v0}, Lkotlinx/coroutines/flow/SubscribedFlowCollector;->a(Lkotlin/coroutines/c;)Ljava/lang/Object; move-result-object p2 :try_end_3 .catchall {:try_start_3 .. :try_end_3} :catchall_1 if-ne p2, v1, :cond_5 return-object v1 :cond_5 move-object v9, p0 .line 6 :goto_1 :try_start_4 invoke-interface {v0}, Lkotlin/coroutines/c;->getContext()Lkotlin/coroutines/CoroutineContext; move-result-object p2 .line 7 sget-object v2, Lkotlinx/coroutines/y1;->q0:Lkotlinx/coroutines/y1$b; invoke-interface {p2, v2}, Lkotlin/coroutines/CoroutineContext;->get(Lkotlin/coroutines/CoroutineContext$b;)Lkotlin/coroutines/CoroutineContext$a; move-result-object p2 check-cast p2, Lkotlinx/coroutines/y1; move-object v8, p1 move-object v2, p2 move-object p1, v3 .line 8 :cond_6 :goto_2 iget-object p2, v9, Lkotlinx/coroutines/flow/StateFlowImpl;->_state:Ljava/lang/Object; if-eqz v2, :cond_7 .line 9 invoke-static {v2}, Lkotlinx/coroutines/b2;->B(Lkotlinx/coroutines/y1;)V :cond_7 if-eqz p1, :cond_8 .line 10 invoke-static {p1, p2}, Lkotlin/jvm/internal/f0;->g(Ljava/lang/Object;Ljava/lang/Object;)Z move-result v10 xor-int/2addr v10, v6 if-eqz v10, :cond_b .line 11 :cond_8 sget-object v10, Lkotlinx/coroutines/flow/internal/n;->a:Lkotlinx/coroutines/internal/i0; if-ne p2, v10, :cond_9 move-object v10, v3 goto :goto_3 :cond_9 move-object v10, p2 .line 12 :goto_3 iput-object v9, v0, Lkotlinx/coroutines/flow/StateFlowImpl$collect$1;->L$0:Ljava/lang/Object; iput-object v8, v0, Lkotlinx/coroutines/flow/StateFlowImpl$collect$1;->L$1:Ljava/lang/Object; iput-object v7, v0, Lkotlinx/coroutines/flow/StateFlowImpl$collect$1;->L$2:Ljava/lang/Object; iput-object v2, v0, Lkotlinx/coroutines/flow/StateFlowImpl$collect$1;->L$3:Ljava/lang/Object; iput-object p1, v0, Lkotlinx/coroutines/flow/StateFlowImpl$collect$1;->L$4:Ljava/lang/Object; iput-object p2, v0, Lkotlinx/coroutines/flow/StateFlowImpl$collect$1;->L$5:Ljava/lang/Object; iput v5, v0, Lkotlinx/coroutines/flow/StateFlowImpl$collect$1;->label:I .line 13 invoke-interface {v8, v10, v0}, Lkotlinx/coroutines/flow/g;->emit(Ljava/lang/Object;Lkotlin/coroutines/c;)Ljava/lang/Object; move-result-object p1 if-ne p1, v1, :cond_a return-object v1 :cond_a move-object p1, p2 :goto_4 move-object p2, p1 .line 14 :cond_b invoke-virtual {v7}, Lkotlinx/coroutines/flow/b0;->g()Z move-result v10 if-nez v10, :cond_6 .line 15 iput-object v9, v0, Lkotlinx/coroutines/flow/StateFlowImpl$collect$1;->L$0:Ljava/lang/Object; iput-object v8, v0, Lkotlinx/coroutines/flow/StateFlowImpl$collect$1;->L$1:Ljava/lang/Object; iput-object v7, v0, Lkotlinx/coroutines/flow/StateFlowImpl$collect$1;->L$2:Ljava/lang/Object; iput-object v2, v0, Lkotlinx/coroutines/flow/StateFlowImpl$collect$1;->L$3:Ljava/lang/Object; iput-object p1, v0, Lkotlinx/coroutines/flow/StateFlowImpl$collect$1;->L$4:Ljava/lang/Object; iput-object p2, v0, Lkotlinx/coroutines/flow/StateFlowImpl$collect$1;->L$5:Ljava/lang/Object; iput v4, v0, Lkotlinx/coroutines/flow/StateFlowImpl$collect$1;->label:I invoke-virtual {v7, v0}, Lkotlinx/coroutines/flow/b0;->d(Lkotlin/coroutines/c;)Ljava/lang/Object; move-result-object p2 :try_end_4 .catchall {:try_start_4 .. :try_end_4} :catchall_0 if-ne p2, v1, :cond_6 return-object v1 :catchall_1 move-exception p1 move-object v9, p0 .line 16 :goto_5 invoke-virtual {v9, v7}, Lkotlinx/coroutines/flow/internal/a;->o(Lkotlinx/coroutines/flow/internal/c;)V throw p1 .end method .method public emit(Ljava/lang/Object;Lkotlin/coroutines/c;)Ljava/lang/Object; .locals 0 .param p2 # Lkotlin/coroutines/c; .annotation build Lorg/jetbrains/annotations/NotNull; .end annotation .end param .annotation system Ldalvik/annotation/Signature; value = { "(TT;", "Lkotlin/coroutines/c<", "-", "Lkotlin/d1;", ">;)", "Ljava/lang/Object;" } .end annotation .annotation build Lorg/jetbrains/annotations/Nullable; .end annotation .line 1 invoke-virtual {p0, p1}, Lkotlinx/coroutines/flow/StateFlowImpl;->setValue(Ljava/lang/Object;)V .line 2 sget-object p1, Lkotlin/d1;->a:Lkotlin/d1; return-object p1 .end method .method public getValue()Ljava/lang/Object; .locals 2 .annotation system Ldalvik/annotation/Signature; value = { "()TT;" } .end annotation .line 1 sget-object v0, Lkotlinx/coroutines/flow/internal/n;->a:Lkotlinx/coroutines/internal/i0; iget-object v1, p0, Lkotlinx/coroutines/flow/StateFlowImpl;->_state:Ljava/lang/Object; if-ne v1, v0, :cond_0 const/4 v1, 0x0 :cond_0 return-object v1 .end method .method public i()V .locals 2 .line 1 new-instance v0, Ljava/lang/UnsupportedOperationException; const-string v1, "MutableStateFlow.resetReplayCache is not supported" invoke-direct {v0, v1}, Ljava/lang/UnsupportedOperationException;->(Ljava/lang/String;)V throw v0 .end method .method public bridge synthetic l()Lkotlinx/coroutines/flow/internal/c; .locals 1 .line 1 invoke-virtual {p0}, Lkotlinx/coroutines/flow/StateFlowImpl;->s()Lkotlinx/coroutines/flow/b0; move-result-object v0 return-object v0 .end method .method public bridge synthetic m(I)[Lkotlinx/coroutines/flow/internal/c; .locals 0 .line 1 invoke-virtual {p0, p1}, Lkotlinx/coroutines/flow/StateFlowImpl;->t(I)[Lkotlinx/coroutines/flow/b0; move-result-object p1 return-object p1 .end method .method public s()Lkotlinx/coroutines/flow/b0; .locals 1 .annotation build Lorg/jetbrains/annotations/NotNull; .end annotation .line 1 new-instance v0, Lkotlinx/coroutines/flow/b0; invoke-direct {v0}, Lkotlinx/coroutines/flow/b0;->()V return-object v0 .end method .method public setValue(Ljava/lang/Object;)V .locals 1 .annotation system Ldalvik/annotation/Signature; value = { "(TT;)V" } .end annotation if-eqz p1, :cond_0 goto :goto_0 .line 1 :cond_0 sget-object p1, Lkotlinx/coroutines/flow/internal/n;->a:Lkotlinx/coroutines/internal/i0; :goto_0 const/4 v0, 0x0 invoke-virtual {p0, v0, p1}, Lkotlinx/coroutines/flow/StateFlowImpl;->v(Ljava/lang/Object;Ljava/lang/Object;)Z return-void .end method .method public t(I)[Lkotlinx/coroutines/flow/b0; .locals 0 .annotation build Lorg/jetbrains/annotations/NotNull; .end annotation .line 1 new-array p1, p1, [Lkotlinx/coroutines/flow/b0; return-object p1 .end method .method public final v(Ljava/lang/Object;Ljava/lang/Object;)Z .locals 6 .line 1 invoke-virtual {p0}, Lkotlinx/coroutines/flow/internal/a;->q()[Lkotlinx/coroutines/flow/internal/c; move-result-object v0 check-cast v0, [Lkotlinx/coroutines/flow/b0; .line 2 monitor-enter p0 .line 3 :try_start_0 iget-object v0, p0, Lkotlinx/coroutines/flow/StateFlowImpl;->_state:Ljava/lang/Object; const/4 v1, 0x0 const/4 v2, 0x1 if-eqz p1, :cond_0 .line 4 invoke-static {v0, p1}, Lkotlin/jvm/internal/f0;->g(Ljava/lang/Object;Ljava/lang/Object;)Z move-result p1 :try_end_0 .catchall {:try_start_0 .. :try_end_0} :catchall_1 xor-int/2addr p1, v2 if-eqz p1, :cond_0 monitor-exit p0 return v1 .line 5 :cond_0 :try_start_1 invoke-static {v0, p2}, Lkotlin/jvm/internal/f0;->g(Ljava/lang/Object;Ljava/lang/Object;)Z move-result p1 :try_end_1 .catchall {:try_start_1 .. :try_end_1} :catchall_1 if-eqz p1, :cond_1 monitor-exit p0 return v2 .line 6 :cond_1 :try_start_2 iput-object p2, p0, Lkotlinx/coroutines/flow/StateFlowImpl;->_state:Ljava/lang/Object; .line 7 iget p1, p0, Lkotlinx/coroutines/flow/StateFlowImpl;->e:I and-int/lit8 p2, p1, 0x1 if-nez p2, :cond_5 add-int/2addr p1, v2 .line 8 iput p1, p0, Lkotlinx/coroutines/flow/StateFlowImpl;->e:I .line 9 invoke-virtual {p0}, Lkotlinx/coroutines/flow/internal/a;->q()[Lkotlinx/coroutines/flow/internal/c; move-result-object p2 check-cast p2, [Lkotlinx/coroutines/flow/b0; .line 10 sget-object v0, Lkotlin/d1;->a:Lkotlin/d1; :try_end_2 .catchall {:try_start_2 .. :try_end_2} :catchall_1 monitor-exit p0 :goto_0 if-eqz p2, :cond_3 .line 11 array-length v0, p2 move v3, v1 :goto_1 if-ge v3, v0, :cond_3 aget-object v4, p2, v3 if-eqz v4, :cond_2 .line 12 invoke-virtual {v4}, Lkotlinx/coroutines/flow/b0;->f()V :cond_2 add-int/lit8 v3, v3, 0x1 goto :goto_1 .line 13 :cond_3 monitor-enter p0 .line 14 :try_start_3 iget p2, p0, Lkotlinx/coroutines/flow/StateFlowImpl;->e:I if-ne p2, p1, :cond_4 add-int/2addr p1, v2 .line 15 iput p1, p0, Lkotlinx/coroutines/flow/StateFlowImpl;->e:I :try_end_3 .catchall {:try_start_3 .. :try_end_3} :catchall_0 .line 16 monitor-exit p0 return v2 .line 17 :cond_4 :try_start_4 invoke-virtual {p0}, Lkotlinx/coroutines/flow/internal/a;->q()[Lkotlinx/coroutines/flow/internal/c; move-result-object p1 check-cast p1, [Lkotlinx/coroutines/flow/b0; .line 18 sget-object v0, Lkotlin/d1;->a:Lkotlin/d1; :try_end_4 .catchall {:try_start_4 .. :try_end_4} :catchall_0 monitor-exit p0 move v5, p2 move-object p2, p1 move p1, v5 goto :goto_0 :catchall_0 move-exception p1 monitor-exit p0 throw p1 :cond_5 add-int/lit8 p1, p1, 0x2 .line 19 :try_start_5 iput p1, p0, Lkotlinx/coroutines/flow/StateFlowImpl;->e:I :try_end_5 .catchall {:try_start_5 .. :try_end_5} :catchall_1 .line 20 monitor-exit p0 return v2 :catchall_1 move-exception p1 .line 21 monitor-exit p0 throw p1 .end method