ViewModelExtKt.smali

.class public final Landroidx/lifecycle/ViewModelExtKt;
.super Ljava/lang/Object;
.source "ViewModelExt.kt"


# annotations
.annotation runtime Lkotlin/Metadata;
    bv = {
        0x1,
        0x0,
        0x3
    }
    d1 = {
        "\u0000P\n\u0000\n\u0002\u0010\u000e\n\u0002\u0008\u0002\n\u0002\u0018\u0002\n\u0002\u0018\u0002\n\u0002\u0008\u0003\n\u0002\u0010\u0002\n\u0000\n\u0002\u0018\u0002\n\u0002\u0018\u0002\n\u0002\u0018\u0002\n\u0002\u0010\u0000\n\u0002\u0018\u0002\n\u0002\u0008\u0002\n\u0002\u0018\u0002\n\u0000\n\u0002\u0018\u0002\n\u0000\n\u0002\u0018\u0002\n\u0002\u0008\u0004\n\u0002\u0018\u0002\n\u0002\u0008\u0002\u001a:\u0010\u0008\u001a\u00020\t2\'\u0010\n\u001a#\u0008\u0001\u0012\u0004\u0012\u00020\u000c\u0012\n\u0012\u0008\u0012\u0004\u0012\u00020\t0\r\u0012\u0006\u0012\u0004\u0018\u00010\u000e0\u000b\u00a2\u0006\u0002\u0008\u000fH\u0086@\u00f8\u0001\u0000\u00a2\u0006\u0002\u0010\u0010\u001aQ\u0010\u0011\u001a\u0008\u0012\u0004\u0012\u0002H\u00130\u0012\"\u0004\u0008\u0000\u0010\u0013*\u00020\u00142\u0008\u0008\u0002\u0010\u0015\u001a\u00020\u00162\'\u0010\n\u001a#\u0008\u0001\u0012\u0004\u0012\u00020\u000c\u0012\n\u0012\u0008\u0012\u0004\u0012\u0002H\u00130\r\u0012\u0006\u0012\u0004\u0018\u00010\u000e0\u000b\u00a2\u0006\u0002\u0008\u000f\u00f8\u0001\u0000\u00a2\u0006\u0002\u0010\u0017\u001a\u0012\u0010\u0018\u001a\u00020\u0014*\u00020\u00042\u0006\u0010\u0019\u001a\u00020\u000c\u001aE\u0010\u001a\u001a\u00020\u001b*\u00020\u00142\u0008\u0008\u0002\u0010\u0015\u001a\u00020\u00162\'\u0010\n\u001a#\u0008\u0001\u0012\u0004\u0012\u00020\u000c\u0012\n\u0012\u0008\u0012\u0004\u0012\u00020\t0\r\u0012\u0006\u0012\u0004\u0018\u00010\u000e0\u000b\u00a2\u0006\u0002\u0008\u000f\u00f8\u0001\u0000\u00a2\u0006\u0002\u0010\u001c\"\u000e\u0010\u0000\u001a\u00020\u0001X\u0082T\u00a2\u0006\u0002\n\u0000\"\u000e\u0010\u0002\u001a\u00020\u0001X\u0082T\u00a2\u0006\u0002\n\u0000\"\u0015\u0010\u0003\u001a\u00020\u0004*\u00020\u00058F\u00a2\u0006\u0006\u001a\u0004\u0008\u0006\u0010\u0007\u0082\u0002\u0004\n\u0002\u0008\u0019\u00a8\u0006\u001d"
    }
    d2 = {
        "JOB_KEY",
        "",
        "TAG",
        "combinedScope",
        "Landroidx/lifecycle/CombinedScope;",
        "Landroidx/lifecycle/ViewModel;",
        "getCombinedScope",
        "(Landroidx/lifecycle/ViewModel;)Landroidx/lifecycle/CombinedScope;",
        "switchToMainThread",
        "",
        "block",
        "Lkotlin/Function2;",
        "Lkotlinx/coroutines/CoroutineScope;",
        "Lkotlin/coroutines/Continuation;",
        "",
        "Lkotlin/ExtensionFunctionType;",
        "(Lkotlin/jvm/functions/Function2;Lkotlin/coroutines/Continuation;)Ljava/lang/Object;",
        "async",
        "Lkotlinx/coroutines/Deferred;",
        "T",
        "Landroidx/lifecycle/Combined;",
        "dispatcher",
        "Lkotlinx/coroutines/CoroutineDispatcher;",
        "(Landroidx/lifecycle/Combined;Lkotlinx/coroutines/CoroutineDispatcher;Lkotlin/jvm/functions/Function2;)Lkotlinx/coroutines/Deferred;",
        "combined",
        "bindScope",
        "launch",
        "Lkotlinx/coroutines/Job;",
        "(Landroidx/lifecycle/Combined;Lkotlinx/coroutines/CoroutineDispatcher;Lkotlin/jvm/functions/Function2;)Lkotlinx/coroutines/Job;",
        "base_release"
    }
    k = 0x2
    mv = {
        0x1,
        0x1,
        0x10
    }
.end annotation


# static fields
.field public static final JOB_KEY:Ljava/lang/String; = "androidx.lifecycle.ViewModel&WithCustomSupervisorJob.JOB_KEY"

.field public static final TAG:Ljava/lang/String; = "CombinedScope"


# direct methods
.method static constructor <clinit>()V
    .registers 1

    return-void
.end method

.method public static final async(Landroidx/lifecycle/Combined;Lkotlinx/coroutines/CoroutineDispatcher;Lkotlin/jvm/functions/Function2;)Lkotlinx/coroutines/Deferred;
    .registers 9
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "<T:",
            "Ljava/lang/Object;",
            ">(",
            "Landroidx/lifecycle/Combined;",
            "Lkotlinx/coroutines/CoroutineDispatcher;",
            "Lkotlin/jvm/functions/Function2<",
            "-",
            "Lkotlinx/coroutines/CoroutineScope;",
            "-",
            "Lkotlin/coroutines/Continuation<",
            "-TT;>;+",
            "Ljava/lang/Object;",
            ">;)",
            "Lkotlinx/coroutines/Deferred<",
            "TT;>;"
        }
    .end annotation

    invoke-virtual {p0}, Landroidx/lifecycle/Combined;->getSelf$base_release()Landroidx/lifecycle/CombinedScope;

    move-result-object v0

    const/4 v2, 0x0

    const/4 v4, 0x2

    const/4 v5, 0x0

    move-object v1, p1

    move-object v3, p2

    invoke-static/range {v0 .. v5}, Lkotlinx/coroutines/BuildersKt;->async$default(Lkotlinx/coroutines/CoroutineScope;Lkotlin/coroutines/CoroutineContext;Lkotlinx/coroutines/CoroutineStart;Lkotlin/jvm/functions/Function2;ILjava/lang/Object;)Lkotlinx/coroutines/Deferred;

    move-result-object p1

    invoke-virtual {p0}, Landroidx/lifecycle/Combined;->getBindScope$base_release()Lkotlinx/coroutines/CoroutineScope;

    move-result-object p2

    invoke-interface {p2}, Lkotlinx/coroutines/CoroutineScope;->getCoroutineContext()Lkotlin/coroutines/CoroutineContext;

    move-result-object p2

    sget-object v0, Lkotlinx/coroutines/Job;->Key:Lkotlinx/coroutines/Job$Key;

    invoke-interface {p2, v0}, Lkotlin/coroutines/CoroutineContext;->get(Lkotlin/coroutines/CoroutineContext$Key;)Lkotlin/coroutines/CoroutineContext$Element;

    move-result-object p2

    check-cast p2, Lkotlinx/coroutines/Job;

    if-eqz p2, :cond_4a

    new-instance v0, Landroidx/lifecycle/ViewModelExtKt$async$1;

    invoke-direct {v0, p1}, Landroidx/lifecycle/ViewModelExtKt$async$1;-><init>(Lkotlinx/coroutines/Deferred;)V

    invoke-interface {p2, v0}, Lkotlinx/coroutines/Job;->invokeOnCompletion(Lkotlin/jvm/functions/Function1;)Lkotlinx/coroutines/DisposableHandle;

    move-result-object p2

    if-eqz p2, :cond_4a

    sget-object v0, Lqa/d;->e:Lqa/d$a;

    new-instance v1, Landroidx/lifecycle/ViewModelExtKt$async$2$1;

    invoke-direct {v1, p2}, Landroidx/lifecycle/ViewModelExtKt$async$2$1;-><init>(Lkotlinx/coroutines/DisposableHandle;)V

    const-string v2, "CombinedScope"

    invoke-virtual {v0, v2, v1}, Lqa/d$a;->a(Ljava/lang/String;Lkotlin/jvm/functions/Function0;)V

    invoke-virtual {p0}, Landroidx/lifecycle/Combined;->getSelf$base_release()Landroidx/lifecycle/CombinedScope;

    move-result-object p0

    invoke-virtual {p0}, Landroidx/lifecycle/CombinedScope;->getViewModel$base_release()Landroidx/lifecycle/ViewModel;

    move-result-object p0

    invoke-virtual {p2}, Ljava/lang/Object;->toString()Ljava/lang/String;

    move-result-object v0

    new-instance v1, Landroidx/lifecycle/ClosableDisposeHandler;

    invoke-direct {v1, p2}, Landroidx/lifecycle/ClosableDisposeHandler;-><init>(Lkotlinx/coroutines/DisposableHandle;)V

    invoke-virtual {p0, v0, v1}, Landroidx/lifecycle/ViewModel;->setTagIfAbsent(Ljava/lang/String;Ljava/lang/Object;)Ljava/lang/Object;

    :cond_4a
    return-object p1
.end method

.method public static synthetic async$default(Landroidx/lifecycle/Combined;Lkotlinx/coroutines/CoroutineDispatcher;Lkotlin/jvm/functions/Function2;ILjava/lang/Object;)Lkotlinx/coroutines/Deferred;
    .registers 5

    and-int/lit8 p3, p3, 0x1

    if-eqz p3, :cond_20

    invoke-virtual {p0}, Landroidx/lifecycle/Combined;->getBindScope$base_release()Lkotlinx/coroutines/CoroutineScope;

    move-result-object p1

    invoke-interface {p1}, Lkotlinx/coroutines/CoroutineScope;->getCoroutineContext()Lkotlin/coroutines/CoroutineContext;

    move-result-object p1

    sget-object p3, Lkotlin/coroutines/ContinuationInterceptor;->Key:Lkotlin/coroutines/ContinuationInterceptor$Key;

    invoke-interface {p1, p3}, Lkotlin/coroutines/CoroutineContext;->get(Lkotlin/coroutines/CoroutineContext$Key;)Lkotlin/coroutines/CoroutineContext$Element;

    move-result-object p1

    instance-of p3, p1, Lkotlinx/coroutines/CoroutineDispatcher;

    if-nez p3, :cond_17

    const/4 p1, 0x0

    :cond_17
    check-cast p1, Lkotlinx/coroutines/CoroutineDispatcher;

    if-eqz p1, :cond_1c

    goto :goto_20

    :cond_1c
    invoke-static {}, Lmd/e;->c()Lkotlinx/coroutines/android/HandlerDispatcher;

    move-result-object p1

    :cond_20
    :goto_20
    invoke-static {p0, p1, p2}, Landroidx/lifecycle/ViewModelExtKt;->async(Landroidx/lifecycle/Combined;Lkotlinx/coroutines/CoroutineDispatcher;Lkotlin/jvm/functions/Function2;)Lkotlinx/coroutines/Deferred;

    move-result-object p0

    return-object p0
.end method

.method public static final combined(Landroidx/lifecycle/CombinedScope;Lkotlinx/coroutines/CoroutineScope;)Landroidx/lifecycle/Combined;
    .registers 3

    new-instance v0, Landroidx/lifecycle/Combined;

    invoke-direct {v0, p0, p1}, Landroidx/lifecycle/Combined;-><init>(Landroidx/lifecycle/CombinedScope;Lkotlinx/coroutines/CoroutineScope;)V

    return-object v0
.end method

.method public static final getCombinedScope(Landroidx/lifecycle/ViewModel;)Landroidx/lifecycle/CombinedScope;
    .registers 5

    const-string v0, "androidx.lifecycle.ViewModel&WithCustomSupervisorJob.JOB_KEY"

    invoke-virtual {p0, v0}, Landroidx/lifecycle/ViewModel;->getTag(Ljava/lang/String;)Ljava/lang/Object;

    move-result-object v1

    check-cast v1, Landroidx/lifecycle/CombinedScope;

    if-eqz v1, :cond_b

    return-object v1

    :cond_b
    new-instance v1, Landroidx/lifecycle/CombinedScope;

    const/4 v2, 0x1

    const/4 v3, 0x0

    invoke-static {v3, v2, v3}, Lkotlinx/coroutines/SupervisorKt;->SupervisorJob$default(Lkotlinx/coroutines/Job;ILjava/lang/Object;)Lkotlinx/coroutines/CompletableJob;

    move-result-object v2

    invoke-static {}, Lmd/e;->c()Lkotlinx/coroutines/android/HandlerDispatcher;

    move-result-object v3

    invoke-interface {v2, v3}, Lkotlin/coroutines/CoroutineContext;->plus(Lkotlin/coroutines/CoroutineContext;)Lkotlin/coroutines/CoroutineContext;

    move-result-object v2

    invoke-direct {v1, p0, v2}, Landroidx/lifecycle/CombinedScope;-><init>(Landroidx/lifecycle/ViewModel;Lkotlin/coroutines/CoroutineContext;)V

    invoke-virtual {p0, v0, v1}, Landroidx/lifecycle/ViewModel;->setTagIfAbsent(Ljava/lang/String;Ljava/lang/Object;)Ljava/lang/Object;

    move-result-object p0

    const-string v0, "setTagIfAbsent(\n        \u2026CHER_FAST_MAIN)\n        )"

    invoke-static {p0, v0}, Lkotlin/jvm/internal/Intrinsics;->checkExpressionValueIsNotNull(Ljava/lang/Object;Ljava/lang/String;)V

    check-cast p0, Landroidx/lifecycle/CombinedScope;

    return-object p0
.end method

.method public static final launch(Landroidx/lifecycle/Combined;Lkotlinx/coroutines/CoroutineDispatcher;Lkotlin/jvm/functions/Function2;)Lkotlinx/coroutines/Job;
    .registers 9
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "(",
            "Landroidx/lifecycle/Combined;",
            "Lkotlinx/coroutines/CoroutineDispatcher;",
            "Lkotlin/jvm/functions/Function2<",
            "-",
            "Lkotlinx/coroutines/CoroutineScope;",
            "-",
            "Lkotlin/coroutines/Continuation<",
            "-",
            "Lkotlin/Unit;",
            ">;+",
            "Ljava/lang/Object;",
            ">;)",
            "Lkotlinx/coroutines/Job;"
        }
    .end annotation

    invoke-virtual {p0}, Landroidx/lifecycle/Combined;->getSelf$base_release()Landroidx/lifecycle/CombinedScope;

    move-result-object v0

    const/4 v2, 0x0

    const/4 v4, 0x2

    const/4 v5, 0x0

    move-object v1, p1

    move-object v3, p2

    invoke-static/range {v0 .. v5}, Lkotlinx/coroutines/BuildersKt;->launch$default(Lkotlinx/coroutines/CoroutineScope;Lkotlin/coroutines/CoroutineContext;Lkotlinx/coroutines/CoroutineStart;Lkotlin/jvm/functions/Function2;ILjava/lang/Object;)Lkotlinx/coroutines/Job;

    move-result-object p1

    invoke-virtual {p0}, Landroidx/lifecycle/Combined;->getBindScope$base_release()Lkotlinx/coroutines/CoroutineScope;

    move-result-object p2

    invoke-interface {p2}, Lkotlinx/coroutines/CoroutineScope;->getCoroutineContext()Lkotlin/coroutines/CoroutineContext;

    move-result-object p2

    sget-object v0, Lkotlinx/coroutines/Job;->Key:Lkotlinx/coroutines/Job$Key;

    invoke-interface {p2, v0}, Lkotlin/coroutines/CoroutineContext;->get(Lkotlin/coroutines/CoroutineContext$Key;)Lkotlin/coroutines/CoroutineContext$Element;

    move-result-object p2

    check-cast p2, Lkotlinx/coroutines/Job;

    if-eqz p2, :cond_4a

    new-instance v0, Landroidx/lifecycle/ViewModelExtKt$launch$1;

    invoke-direct {v0, p1}, Landroidx/lifecycle/ViewModelExtKt$launch$1;-><init>(Lkotlinx/coroutines/Job;)V

    invoke-interface {p2, v0}, Lkotlinx/coroutines/Job;->invokeOnCompletion(Lkotlin/jvm/functions/Function1;)Lkotlinx/coroutines/DisposableHandle;

    move-result-object p2

    if-eqz p2, :cond_4a

    sget-object v0, Lqa/d;->e:Lqa/d$a;

    new-instance v1, Landroidx/lifecycle/ViewModelExtKt$launch$2$1;

    invoke-direct {v1, p2}, Landroidx/lifecycle/ViewModelExtKt$launch$2$1;-><init>(Lkotlinx/coroutines/DisposableHandle;)V

    const-string v2, "CombinedScope"

    invoke-virtual {v0, v2, v1}, Lqa/d$a;->a(Ljava/lang/String;Lkotlin/jvm/functions/Function0;)V

    invoke-virtual {p0}, Landroidx/lifecycle/Combined;->getSelf$base_release()Landroidx/lifecycle/CombinedScope;

    move-result-object p0

    invoke-virtual {p0}, Landroidx/lifecycle/CombinedScope;->getViewModel$base_release()Landroidx/lifecycle/ViewModel;

    move-result-object p0

    invoke-virtual {p2}, Ljava/lang/Object;->toString()Ljava/lang/String;

    move-result-object v0

    new-instance v1, Landroidx/lifecycle/ClosableDisposeHandler;

    invoke-direct {v1, p2}, Landroidx/lifecycle/ClosableDisposeHandler;-><init>(Lkotlinx/coroutines/DisposableHandle;)V

    invoke-virtual {p0, v0, v1}, Landroidx/lifecycle/ViewModel;->setTagIfAbsent(Ljava/lang/String;Ljava/lang/Object;)Ljava/lang/Object;

    :cond_4a
    return-object p1
.end method

.method public static synthetic launch$default(Landroidx/lifecycle/Combined;Lkotlinx/coroutines/CoroutineDispatcher;Lkotlin/jvm/functions/Function2;ILjava/lang/Object;)Lkotlinx/coroutines/Job;
    .registers 5

    and-int/lit8 p3, p3, 0x1

    if-eqz p3, :cond_20

    invoke-virtual {p0}, Landroidx/lifecycle/Combined;->getBindScope$base_release()Lkotlinx/coroutines/CoroutineScope;

    move-result-object p1

    invoke-interface {p1}, Lkotlinx/coroutines/CoroutineScope;->getCoroutineContext()Lkotlin/coroutines/CoroutineContext;

    move-result-object p1

    sget-object p3, Lkotlin/coroutines/ContinuationInterceptor;->Key:Lkotlin/coroutines/ContinuationInterceptor$Key;

    invoke-interface {p1, p3}, Lkotlin/coroutines/CoroutineContext;->get(Lkotlin/coroutines/CoroutineContext$Key;)Lkotlin/coroutines/CoroutineContext$Element;

    move-result-object p1

    instance-of p3, p1, Lkotlinx/coroutines/CoroutineDispatcher;

    if-nez p3, :cond_17

    const/4 p1, 0x0

    :cond_17
    check-cast p1, Lkotlinx/coroutines/CoroutineDispatcher;

    if-eqz p1, :cond_1c

    goto :goto_20

    :cond_1c
    invoke-static {}, Lmd/e;->c()Lkotlinx/coroutines/android/HandlerDispatcher;

    move-result-object p1

    :cond_20
    :goto_20
    invoke-static {p0, p1, p2}, Landroidx/lifecycle/ViewModelExtKt;->launch(Landroidx/lifecycle/Combined;Lkotlinx/coroutines/CoroutineDispatcher;Lkotlin/jvm/functions/Function2;)Lkotlinx/coroutines/Job;

    move-result-object p0

    return-object p0
.end method

.method public static final switchToMainThread(Lkotlin/jvm/functions/Function2;Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
    .registers 5
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "(",
            "Lkotlin/jvm/functions/Function2<",
            "-",
            "Lkotlinx/coroutines/CoroutineScope;",
            "-",
            "Lkotlin/coroutines/Continuation<",
            "-",
            "Lkotlin/Unit;",
            ">;+",
            "Ljava/lang/Object;",
            ">;",
            "Lkotlin/coroutines/Continuation<",
            "-",
            "Lkotlin/Unit;",
            ">;)",
            "Ljava/lang/Object;"
        }
    .end annotation

    invoke-static {}, Lmd/e;->c()Lkotlinx/coroutines/android/HandlerDispatcher;

    move-result-object v0

    new-instance v1, Landroidx/lifecycle/ViewModelExtKt$switchToMainThread$2;

    const/4 v2, 0x0

    invoke-direct {v1, p0, v2}, Landroidx/lifecycle/ViewModelExtKt$switchToMainThread$2;-><init>(Lkotlin/jvm/functions/Function2;Lkotlin/coroutines/Continuation;)V

    invoke-static {v0, v1, p1}, Lkotlinx/coroutines/BuildersKt;->withContext(Lkotlin/coroutines/CoroutineContext;Lkotlin/jvm/functions/Function2;Lkotlin/coroutines/Continuation;)Ljava/lang/Object;

    move-result-object p0

    invoke-static {}, Lkotlin/coroutines/intrinsics/IntrinsicsKt__IntrinsicsKt;->getCOROUTINE_SUSPENDED()Ljava/lang/Object;

    move-result-object p1

    if-ne p0, p1, :cond_15

    return-object p0

    :cond_15
    sget-object p0, Lkotlin/Unit;->INSTANCE:Lkotlin/Unit;

    return-object p0
.end method