d.smali

.class public abstract Lkotlin/c/b/a/d;
.super Lkotlin/c/b/a/a;
.source "SourceFile"


# instance fields
.field private final _context:Lkotlin/c/e;

.field private transient intercepted:Lkotlin/c/c;
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "Lkotlin/c/c<",
            "Ljava/lang/Object;",
            ">;"
        }
    .end annotation
.end field


# direct methods
.method public constructor <init>(Lkotlin/c/c;)V
    .registers 3
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "(",
            "Lkotlin/c/c<",
            "Ljava/lang/Object;",
            ">;)V"
        }
    .end annotation

    if-eqz p1, :cond_7

    .line 102
    invoke-interface {p1}, Lkotlin/c/c;->getContext()Lkotlin/c/e;

    move-result-object v0

    goto :goto_8

    :cond_7
    const/4 v0, 0x0

    :goto_8
    invoke-direct {p0, p1, v0}, Lkotlin/c/b/a/d;-><init>(Lkotlin/c/c;Lkotlin/c/e;)V

    return-void
.end method

.method public constructor <init>(Lkotlin/c/c;Lkotlin/c/e;)V
    .registers 3
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "(",
            "Lkotlin/c/c<",
            "Ljava/lang/Object;",
            ">;",
            "Lkotlin/c/e;",
            ")V"
        }
    .end annotation

    .line 101
    invoke-direct {p0, p1}, Lkotlin/c/b/a/a;-><init>(Lkotlin/c/c;)V

    iput-object p2, p0, Lkotlin/c/b/a/d;->_context:Lkotlin/c/e;

    return-void
.end method


# virtual methods
.method public getContext()Lkotlin/c/e;
    .registers 2

    .line 105
    iget-object v0, p0, Lkotlin/c/b/a/d;->_context:Lkotlin/c/e;

    if-nez v0, :cond_7

    invoke-static {}, Lkotlin/f/b/o;->a()V

    :cond_7
    return-object v0
.end method

.method public final intercepted()Lkotlin/c/c;
    .registers 3
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "()",
            "Lkotlin/c/c<",
            "Ljava/lang/Object;",
            ">;"
        }
    .end annotation

    .line 111
    iget-object v0, p0, Lkotlin/c/b/a/d;->intercepted:Lkotlin/c/c;

    if-nez v0, :cond_22

    .line 112
    invoke-virtual {p0}, Lkotlin/c/b/a/d;->getContext()Lkotlin/c/e;

    move-result-object v0

    sget-object v1, Lkotlin/c/d;->a:Lkotlin/c/d$a;

    check-cast v1, Lkotlin/c/e$c;

    invoke-interface {v0, v1}, Lkotlin/c/e;->get(Lkotlin/c/e$c;)Lkotlin/c/e$b;

    move-result-object v0

    check-cast v0, Lkotlin/c/d;

    if-eqz v0, :cond_1d

    move-object v1, p0

    check-cast v1, Lkotlin/c/c;

    invoke-interface {v0, v1}, Lkotlin/c/d;->interceptContinuation(Lkotlin/c/c;)Lkotlin/c/c;

    move-result-object v0

    if-nez v0, :cond_20

    :cond_1d
    move-object v0, p0

    check-cast v0, Lkotlin/c/c;

    .line 113
    :cond_20
    iput-object v0, p0, Lkotlin/c/b/a/d;->intercepted:Lkotlin/c/c;

    :cond_22
    return-object v0
.end method

.method protected releaseIntercepted()V
    .registers 4

    .line 116
    iget-object v0, p0, Lkotlin/c/b/a/d;->intercepted:Lkotlin/c/c;

    if-eqz v0, :cond_1f

    .line 117
    move-object v1, p0

    check-cast v1, Lkotlin/c/b/a/d;

    if-eq v0, v1, :cond_1f

    .line 118
    invoke-virtual {p0}, Lkotlin/c/b/a/d;->getContext()Lkotlin/c/e;

    move-result-object v1

    sget-object v2, Lkotlin/c/d;->a:Lkotlin/c/d$a;

    check-cast v2, Lkotlin/c/e$c;

    invoke-interface {v1, v2}, Lkotlin/c/e;->get(Lkotlin/c/e$c;)Lkotlin/c/e$b;

    move-result-object v1

    if-nez v1, :cond_1a

    invoke-static {}, Lkotlin/f/b/o;->a()V

    :cond_1a
    check-cast v1, Lkotlin/c/d;

    invoke-interface {v1, v0}, Lkotlin/c/d;->releaseInterceptedContinuation(Lkotlin/c/c;)V

    .line 120
    :cond_1f
    sget-object v0, Lkotlin/c/b/a/c;->a:Lkotlin/c/b/a/c;

    check-cast v0, Lkotlin/c/c;

    iput-object v0, p0, Lkotlin/c/b/a/d;->intercepted:Lkotlin/c/c;

    return-void
.end method