.class public abstract Lkotlinx/coroutines/CancellableContinuationKt; .super Ljava/lang/Object; .source "SourceFile" # direct methods .method public static final disposeOnCancellation(Lkotlinx/coroutines/CancellableContinuation;Lkotlinx/coroutines/DisposableHandle;)V .locals 1 .line 380 new-instance v0, Lkotlinx/coroutines/DisposeOnCancel; invoke-direct {v0, p1}, Lkotlinx/coroutines/DisposeOnCancel;->(Lkotlinx/coroutines/DisposableHandle;)V invoke-interface {p0, v0}, Lkotlinx/coroutines/CancellableContinuation;->invokeOnCancellation(Lkotlin/jvm/functions/Function1;)V return-void .end method .method public static final getOrCreateCancellableContinuation(Lkotlin/coroutines/Continuation;)Lkotlinx/coroutines/CancellableContinuationImpl; .locals 2 .line 347 instance-of v0, p0, Lkotlinx/coroutines/internal/DispatchedContinuation; if-nez v0, :cond_0 .line 348 new-instance v0, Lkotlinx/coroutines/CancellableContinuationImpl; const/4 v1, 0x1 invoke-direct {v0, p0, v1}, Lkotlinx/coroutines/CancellableContinuationImpl;->(Lkotlin/coroutines/Continuation;I)V return-object v0 .line 364 :cond_0 move-object v0, p0 check-cast v0, Lkotlinx/coroutines/internal/DispatchedContinuation; invoke-virtual {v0}, Lkotlinx/coroutines/internal/DispatchedContinuation;->claimReusableCancellableContinuation$kotlinx_coroutines_core()Lkotlinx/coroutines/CancellableContinuationImpl; move-result-object v0 if-eqz v0, :cond_3 invoke-virtual {v0}, Lkotlinx/coroutines/CancellableContinuationImpl;->resetStateReusable()Z move-result v1 if-eqz v1, :cond_1 goto :goto_0 :cond_1 const/4 v0, 0x0 :goto_0 if-nez v0, :cond_2 goto :goto_1 :cond_2 return-object v0 .line 365 :cond_3 :goto_1 new-instance v0, Lkotlinx/coroutines/CancellableContinuationImpl; const/4 v1, 0x2 invoke-direct {v0, p0, v1}, Lkotlinx/coroutines/CancellableContinuationImpl;->(Lkotlin/coroutines/Continuation;I)V return-object v0 .end method