.class public abstract Lkotlinx/coroutines/AbstractCoroutine; .super Lkotlinx/coroutines/JobSupport; .source "SourceFile" # interfaces .implements Lkotlinx/coroutines/Job; .implements Lkotlin/coroutines/Continuation; .implements Lkotlinx/coroutines/CoroutineScope; # instance fields .field public final context:Lkotlin/coroutines/CoroutineContext; # direct methods .method public constructor (Lkotlin/coroutines/CoroutineContext;ZZ)V .locals 0 .line 41 invoke-direct {p0, p3}, Lkotlinx/coroutines/JobSupport;->(Z)V if-eqz p2, :cond_0 sget-object p2, Lkotlinx/coroutines/Job;->Key:Lkotlinx/coroutines/Job$Key; .line 51 invoke-interface {p1, p2}, Lkotlin/coroutines/CoroutineContext;->get(Lkotlin/coroutines/CoroutineContext$Key;)Lkotlin/coroutines/CoroutineContext$Element; move-result-object p2 check-cast p2, Lkotlinx/coroutines/Job; invoke-virtual {p0, p2}, Lkotlinx/coroutines/JobSupport;->initParentJob(Lkotlinx/coroutines/Job;)V .line 58 :cond_0 invoke-interface {p1, p0}, Lkotlin/coroutines/CoroutineContext;->plus(Lkotlin/coroutines/CoroutineContext;)Lkotlin/coroutines/CoroutineContext; move-result-object p1 iput-object p1, p0, Lkotlinx/coroutines/AbstractCoroutine;->context:Lkotlin/coroutines/CoroutineContext; return-void .end method # virtual methods .method public afterResume(Ljava/lang/Object;)V .locals 0 .line 105 invoke-virtual {p0, p1}, Lkotlinx/coroutines/JobSupport;->afterCompletion(Ljava/lang/Object;)V return-void .end method .method public cancellationExceptionMessage()Ljava/lang/String; .locals 2 .line 86 new-instance v0, Ljava/lang/StringBuilder; invoke-direct {v0}, Ljava/lang/StringBuilder;->()V invoke-static {p0}, Lkotlinx/coroutines/DebugStringsKt;->getClassSimpleName(Ljava/lang/Object;)Ljava/lang/String; move-result-object v1 invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; const-string v1, " was cancelled" invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v0 return-object v0 .end method .method public final getContext()Lkotlin/coroutines/CoroutineContext; .locals 1 iget-object v0, p0, Lkotlinx/coroutines/AbstractCoroutine;->context:Lkotlin/coroutines/CoroutineContext; return-object v0 .end method .method public getCoroutineContext()Lkotlin/coroutines/CoroutineContext; .locals 1 iget-object v0, p0, Lkotlinx/coroutines/AbstractCoroutine;->context:Lkotlin/coroutines/CoroutineContext; return-object v0 .end method .method public final handleOnCompletionException$kotlinx_coroutines_core(Ljava/lang/Throwable;)V .locals 1 iget-object v0, p0, Lkotlinx/coroutines/AbstractCoroutine;->context:Lkotlin/coroutines/CoroutineContext; .line 108 invoke-static {v0, p1}, Lkotlinx/coroutines/CoroutineExceptionHandlerKt;->handleCoroutineException(Lkotlin/coroutines/CoroutineContext;Ljava/lang/Throwable;)V return-void .end method .method public isActive()Z .locals 1 .line 65 invoke-super {p0}, Lkotlinx/coroutines/JobSupport;->isActive()Z move-result v0 return v0 .end method .method public nameString$kotlinx_coroutines_core()Ljava/lang/String; .locals 3 iget-object v0, p0, Lkotlinx/coroutines/AbstractCoroutine;->context:Lkotlin/coroutines/CoroutineContext; .line 112 invoke-static {v0}, Lkotlinx/coroutines/CoroutineContextKt;->getCoroutineName(Lkotlin/coroutines/CoroutineContext;)Ljava/lang/String; move-result-object v0 if-nez v0, :cond_0 invoke-super {p0}, Lkotlinx/coroutines/JobSupport;->nameString$kotlinx_coroutines_core()Ljava/lang/String; move-result-object v0 return-object v0 .line 113 :cond_0 new-instance v1, Ljava/lang/StringBuilder; invoke-direct {v1}, Ljava/lang/StringBuilder;->()V const/16 v2, 0x22 invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder; invoke-virtual {v1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; const-string v0, "\":" invoke-virtual {v1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-super {p0}, Lkotlinx/coroutines/JobSupport;->nameString$kotlinx_coroutines_core()Ljava/lang/String; move-result-object v0 invoke-virtual {v1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v0 return-object v0 .end method .method public onCancelled(Ljava/lang/Throwable;Z)V .locals 0 return-void .end method .method public onCompleted(Ljava/lang/Object;)V .locals 0 return-void .end method .method public final onCompletionInternal(Ljava/lang/Object;)V .locals 1 .line 90 instance-of v0, p1, Lkotlinx/coroutines/CompletedExceptionally; if-eqz v0, :cond_0 .line 91 check-cast p1, Lkotlinx/coroutines/CompletedExceptionally; iget-object v0, p1, Lkotlinx/coroutines/CompletedExceptionally;->cause:Ljava/lang/Throwable; invoke-virtual {p1}, Lkotlinx/coroutines/CompletedExceptionally;->getHandled()Z move-result p1 invoke-virtual {p0, v0, p1}, Lkotlinx/coroutines/AbstractCoroutine;->onCancelled(Ljava/lang/Throwable;Z)V goto :goto_0 .line 93 :cond_0 invoke-virtual {p0, p1}, Lkotlinx/coroutines/AbstractCoroutine;->onCompleted(Ljava/lang/Object;)V :goto_0 return-void .end method .method public final resumeWith(Ljava/lang/Object;)V .locals 2 const/4 v0, 0x0 const/4 v1, 0x1 .line 100 invoke-static {p1, v0, v1, v0}, Lkotlinx/coroutines/CompletionStateKt;->toState$default(Ljava/lang/Object;Lkotlin/jvm/functions/Function1;ILjava/lang/Object;)Ljava/lang/Object; move-result-object p1 invoke-virtual {p0, p1}, Lkotlinx/coroutines/JobSupport;->makeCompletingOnce$kotlinx_coroutines_core(Ljava/lang/Object;)Ljava/lang/Object; move-result-object p1 .line 101 sget-object v0, Lkotlinx/coroutines/JobSupportKt;->COMPLETING_WAITING_CHILDREN:Lkotlinx/coroutines/internal/Symbol; if-ne p1, v0, :cond_0 return-void .line 102 :cond_0 invoke-virtual {p0, p1}, Lkotlinx/coroutines/AbstractCoroutine;->afterResume(Ljava/lang/Object;)V return-void .end method .method public final start(Lkotlinx/coroutines/CoroutineStart;Ljava/lang/Object;Lkotlin/jvm/functions/Function2;)V .locals 0 .line 126 invoke-virtual {p1, p3, p2, p0}, Lkotlinx/coroutines/CoroutineStart;->invoke(Lkotlin/jvm/functions/Function2;Ljava/lang/Object;Lkotlin/coroutines/Continuation;)V return-void .end method