Changes of com.discord v1038

This commit is contained in:
root 2020-02-20 20:33:18 +01:00
parent d3be58d05a
commit 43025e6ba3
12907 changed files with 944952 additions and 955972 deletions

View file

@ -1,707 +0,0 @@
.class public final Lx/a;
.super Ljava/lang/Object;
.source "Address.kt"
# instance fields
.field public final a:Lx/u;
.field public final b:Ljava/util/List;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/List<",
"Lx/w;",
">;"
}
.end annotation
.end field
.field public final c:Ljava/util/List;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/List<",
"Lx/k;",
">;"
}
.end annotation
.end field
.field public final d:Lx/q;
.field public final e:Ljavax/net/SocketFactory;
.field public final f:Ljavax/net/ssl/SSLSocketFactory;
.field public final g:Ljavax/net/ssl/HostnameVerifier;
.field public final h:Lx/g;
.field public final i:Lx/c;
.field public final j:Ljava/net/Proxy;
.field public final k:Ljava/net/ProxySelector;
# direct methods
.method public constructor <init>(Ljava/lang/String;ILx/q;Ljavax/net/SocketFactory;Ljavax/net/ssl/SSLSocketFactory;Ljavax/net/ssl/HostnameVerifier;Lx/g;Lx/c;Ljava/net/Proxy;Ljava/util/List;Ljava/util/List;Ljava/net/ProxySelector;)V
.locals 10
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Ljava/lang/String;",
"I",
"Lx/q;",
"Ljavax/net/SocketFactory;",
"Ljavax/net/ssl/SSLSocketFactory;",
"Ljavax/net/ssl/HostnameVerifier;",
"Lx/g;",
"Lx/c;",
"Ljava/net/Proxy;",
"Ljava/util/List<",
"+",
"Lx/w;",
">;",
"Ljava/util/List<",
"Lx/k;",
">;",
"Ljava/net/ProxySelector;",
")V"
}
.end annotation
move-object v0, p0
move-object v1, p1
move v2, p2
move-object v3, p3
move-object v4, p4
move-object/from16 v5, p8
move-object/from16 v6, p12
const/4 v7, 0x0
if-eqz v1, :cond_d
if-eqz v3, :cond_c
if-eqz v4, :cond_b
if-eqz v5, :cond_a
if-eqz p10, :cond_9
if-eqz p11, :cond_8
if-eqz v6, :cond_7
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
iput-object v3, v0, Lx/a;->d:Lx/q;
iput-object v4, v0, Lx/a;->e:Ljavax/net/SocketFactory;
move-object v3, p5
iput-object v3, v0, Lx/a;->f:Ljavax/net/ssl/SSLSocketFactory;
move-object/from16 v3, p6
iput-object v3, v0, Lx/a;->g:Ljavax/net/ssl/HostnameVerifier;
move-object/from16 v3, p7
iput-object v3, v0, Lx/a;->h:Lx/g;
iput-object v5, v0, Lx/a;->i:Lx/c;
move-object/from16 v3, p9
iput-object v3, v0, Lx/a;->j:Ljava/net/Proxy;
iput-object v6, v0, Lx/a;->k:Ljava/net/ProxySelector;
new-instance v3, Lx/u$a;
invoke-direct {v3}, Lx/u$a;-><init>()V
iget-object v4, v0, Lx/a;->f:Ljavax/net/ssl/SSLSocketFactory;
const-string v5, "https"
const-string v6, "http"
if-eqz v4, :cond_0
move-object v4, v5
goto :goto_0
:cond_0
move-object v4, v6
:goto_0
const/4 v7, 0x1
invoke-static {v4, v6, v7}, Lt/a0/n;->equals(Ljava/lang/String;Ljava/lang/String;Z)Z
move-result v8
if-eqz v8, :cond_1
iput-object v6, v3, Lx/u$a;->a:Ljava/lang/String;
goto :goto_1
:cond_1
invoke-static {v4, v5, v7}, Lt/a0/n;->equals(Ljava/lang/String;Ljava/lang/String;Z)Z
move-result v6
if-eqz v6, :cond_6
iput-object v5, v3, Lx/u$a;->a:Ljava/lang/String;
:goto_1
sget-object v4, Lx/u;->l:Lx/u$b;
const/4 v5, 0x0
const/4 v6, 0x0
const/4 v8, 0x0
const/4 v9, 0x7
move-object p3, v4
move-object p4, p1
move p5, v5
move/from16 p6, v6
move/from16 p7, v8
move/from16 p8, v9
invoke-static/range {p3 .. p8}, Lx/u$b;->a(Lx/u$b;Ljava/lang/String;IIZI)Ljava/lang/String;
move-result-object v4
invoke-static {v4}, Lu/a/a2/w;->a(Ljava/lang/String;)Ljava/lang/String;
move-result-object v4
if-eqz v4, :cond_5
iput-object v4, v3, Lx/u$a;->d:Ljava/lang/String;
if-le v7, v2, :cond_2
goto :goto_2
:cond_2
const v1, 0xffff
if-lt v1, v2, :cond_3
goto :goto_3
:cond_3
:goto_2
const/4 v7, 0x0
:goto_3
if-eqz v7, :cond_4
iput v2, v3, Lx/u$a;->e:I
invoke-virtual {v3}, Lx/u$a;->a()Lx/u;
move-result-object v1
iput-object v1, v0, Lx/a;->a:Lx/u;
invoke-static/range {p10 .. p10}, Lx/c0/a;->b(Ljava/util/List;)Ljava/util/List;
move-result-object v1
iput-object v1, v0, Lx/a;->b:Ljava/util/List;
invoke-static/range {p11 .. p11}, Lx/c0/a;->b(Ljava/util/List;)Ljava/util/List;
move-result-object v1
iput-object v1, v0, Lx/a;->c:Ljava/util/List;
return-void
:cond_4
const-string v1, "unexpected port: "
invoke-static {v1, p2}, Le/e/b/a/a;->a(Ljava/lang/String;I)Ljava/lang/String;
move-result-object v1
new-instance v2, Ljava/lang/IllegalArgumentException;
invoke-virtual {v1}, Ljava/lang/Object;->toString()Ljava/lang/String;
move-result-object v1
invoke-direct {v2, v1}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw v2
:cond_5
new-instance v2, Ljava/lang/IllegalArgumentException;
const-string v3, "unexpected host: "
invoke-static {v3, p1}, Le/e/b/a/a;->a(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
move-result-object v1
invoke-direct {v2, v1}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw v2
:cond_6
new-instance v1, Ljava/lang/IllegalArgumentException;
const-string v2, "unexpected scheme: "
invoke-static {v2, v4}, Le/e/b/a/a;->a(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
move-result-object v2
invoke-direct {v1, v2}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw v1
:cond_7
const-string v1, "proxySelector"
invoke-static {v1}, Lt/u/b/j;->a(Ljava/lang/String;)V
throw v7
:cond_8
const-string v1, "connectionSpecs"
invoke-static {v1}, Lt/u/b/j;->a(Ljava/lang/String;)V
throw v7
:cond_9
const-string v1, "protocols"
invoke-static {v1}, Lt/u/b/j;->a(Ljava/lang/String;)V
throw v7
:cond_a
const-string v1, "proxyAuthenticator"
invoke-static {v1}, Lt/u/b/j;->a(Ljava/lang/String;)V
throw v7
:cond_b
const-string v1, "socketFactory"
invoke-static {v1}, Lt/u/b/j;->a(Ljava/lang/String;)V
throw v7
:cond_c
const-string v1, "dns"
invoke-static {v1}, Lt/u/b/j;->a(Ljava/lang/String;)V
throw v7
:cond_d
const-string v1, "uriHost"
invoke-static {v1}, Lt/u/b/j;->a(Ljava/lang/String;)V
throw v7
.end method
# virtual methods
.method public final a()Lx/g;
.locals 1
iget-object v0, p0, Lx/a;->h:Lx/g;
return-object v0
.end method
.method public final a(Lx/a;)Z
.locals 2
if-eqz p1, :cond_1
iget-object v0, p0, Lx/a;->d:Lx/q;
iget-object v1, p1, Lx/a;->d:Lx/q;
invoke-static {v0, v1}, Lt/u/b/j;->areEqual(Ljava/lang/Object;Ljava/lang/Object;)Z
move-result v0
if-eqz v0, :cond_0
iget-object v0, p0, Lx/a;->i:Lx/c;
iget-object v1, p1, Lx/a;->i:Lx/c;
invoke-static {v0, v1}, Lt/u/b/j;->areEqual(Ljava/lang/Object;Ljava/lang/Object;)Z
move-result v0
if-eqz v0, :cond_0
iget-object v0, p0, Lx/a;->b:Ljava/util/List;
iget-object v1, p1, Lx/a;->b:Ljava/util/List;
invoke-static {v0, v1}, Lt/u/b/j;->areEqual(Ljava/lang/Object;Ljava/lang/Object;)Z
move-result v0
if-eqz v0, :cond_0
iget-object v0, p0, Lx/a;->c:Ljava/util/List;
iget-object v1, p1, Lx/a;->c:Ljava/util/List;
invoke-static {v0, v1}, Lt/u/b/j;->areEqual(Ljava/lang/Object;Ljava/lang/Object;)Z
move-result v0
if-eqz v0, :cond_0
iget-object v0, p0, Lx/a;->k:Ljava/net/ProxySelector;
iget-object v1, p1, Lx/a;->k:Ljava/net/ProxySelector;
invoke-static {v0, v1}, Lt/u/b/j;->areEqual(Ljava/lang/Object;Ljava/lang/Object;)Z
move-result v0
if-eqz v0, :cond_0
iget-object v0, p0, Lx/a;->j:Ljava/net/Proxy;
iget-object v1, p1, Lx/a;->j:Ljava/net/Proxy;
invoke-static {v0, v1}, Lt/u/b/j;->areEqual(Ljava/lang/Object;Ljava/lang/Object;)Z
move-result v0
if-eqz v0, :cond_0
iget-object v0, p0, Lx/a;->f:Ljavax/net/ssl/SSLSocketFactory;
iget-object v1, p1, Lx/a;->f:Ljavax/net/ssl/SSLSocketFactory;
invoke-static {v0, v1}, Lt/u/b/j;->areEqual(Ljava/lang/Object;Ljava/lang/Object;)Z
move-result v0
if-eqz v0, :cond_0
iget-object v0, p0, Lx/a;->g:Ljavax/net/ssl/HostnameVerifier;
iget-object v1, p1, Lx/a;->g:Ljavax/net/ssl/HostnameVerifier;
invoke-static {v0, v1}, Lt/u/b/j;->areEqual(Ljava/lang/Object;Ljava/lang/Object;)Z
move-result v0
if-eqz v0, :cond_0
iget-object v0, p0, Lx/a;->h:Lx/g;
iget-object v1, p1, Lx/a;->h:Lx/g;
invoke-static {v0, v1}, Lt/u/b/j;->areEqual(Ljava/lang/Object;Ljava/lang/Object;)Z
move-result v0
if-eqz v0, :cond_0
iget-object v0, p0, Lx/a;->a:Lx/u;
iget v0, v0, Lx/u;->f:I
iget-object p1, p1, Lx/a;->a:Lx/u;
iget p1, p1, Lx/u;->f:I
if-ne v0, p1, :cond_0
const/4 p1, 0x1
goto :goto_0
:cond_0
const/4 p1, 0x0
:goto_0
return p1
:cond_1
const-string p1, "that"
invoke-static {p1}, Lt/u/b/j;->a(Ljava/lang/String;)V
const/4 p1, 0x0
throw p1
.end method
.method public final b()Ljavax/net/ssl/HostnameVerifier;
.locals 1
iget-object v0, p0, Lx/a;->g:Ljavax/net/ssl/HostnameVerifier;
return-object v0
.end method
.method public final c()Lx/c;
.locals 1
iget-object v0, p0, Lx/a;->i:Lx/c;
return-object v0
.end method
.method public final d()Ljava/net/ProxySelector;
.locals 1
iget-object v0, p0, Lx/a;->k:Ljava/net/ProxySelector;
return-object v0
.end method
.method public equals(Ljava/lang/Object;)Z
.locals 2
instance-of v0, p1, Lx/a;
if-eqz v0, :cond_0
iget-object v0, p0, Lx/a;->a:Lx/u;
check-cast p1, Lx/a;
iget-object v1, p1, Lx/a;->a:Lx/u;
invoke-static {v0, v1}, Lt/u/b/j;->areEqual(Ljava/lang/Object;Ljava/lang/Object;)Z
move-result v0
if-eqz v0, :cond_0
invoke-virtual {p0, p1}, Lx/a;->a(Lx/a;)Z
move-result p1
if-eqz p1, :cond_0
const/4 p1, 0x1
goto :goto_0
:cond_0
const/4 p1, 0x0
:goto_0
return p1
.end method
.method public hashCode()I
.locals 2
iget-object v0, p0, Lx/a;->a:Lx/u;
invoke-virtual {v0}, Lx/u;->hashCode()I
move-result v0
add-int/lit16 v0, v0, 0x20f
mul-int/lit8 v0, v0, 0x1f
iget-object v1, p0, Lx/a;->d:Lx/q;
invoke-virtual {v1}, Ljava/lang/Object;->hashCode()I
move-result v1
add-int/2addr v1, v0
mul-int/lit8 v1, v1, 0x1f
iget-object v0, p0, Lx/a;->i:Lx/c;
invoke-virtual {v0}, Ljava/lang/Object;->hashCode()I
move-result v0
add-int/2addr v0, v1
mul-int/lit8 v0, v0, 0x1f
iget-object v1, p0, Lx/a;->b:Ljava/util/List;
invoke-virtual {v1}, Ljava/lang/Object;->hashCode()I
move-result v1
add-int/2addr v1, v0
mul-int/lit8 v1, v1, 0x1f
iget-object v0, p0, Lx/a;->c:Ljava/util/List;
invoke-virtual {v0}, Ljava/lang/Object;->hashCode()I
move-result v0
add-int/2addr v0, v1
mul-int/lit8 v0, v0, 0x1f
iget-object v1, p0, Lx/a;->k:Ljava/net/ProxySelector;
invoke-virtual {v1}, Ljava/net/ProxySelector;->hashCode()I
move-result v1
add-int/2addr v1, v0
mul-int/lit8 v1, v1, 0x1f
iget-object v0, p0, Lx/a;->j:Ljava/net/Proxy;
invoke-static {v0}, Ljava/util/Objects;->hashCode(Ljava/lang/Object;)I
move-result v0
add-int/2addr v0, v1
mul-int/lit8 v0, v0, 0x1f
iget-object v1, p0, Lx/a;->f:Ljavax/net/ssl/SSLSocketFactory;
invoke-static {v1}, Ljava/util/Objects;->hashCode(Ljava/lang/Object;)I
move-result v1
add-int/2addr v1, v0
mul-int/lit8 v1, v1, 0x1f
iget-object v0, p0, Lx/a;->g:Ljavax/net/ssl/HostnameVerifier;
invoke-static {v0}, Ljava/util/Objects;->hashCode(Ljava/lang/Object;)I
move-result v0
add-int/2addr v0, v1
mul-int/lit8 v0, v0, 0x1f
iget-object v1, p0, Lx/a;->h:Lx/g;
invoke-static {v1}, Ljava/util/Objects;->hashCode(Ljava/lang/Object;)I
move-result v1
add-int/2addr v1, v0
return v1
.end method
.method public toString()Ljava/lang/String;
.locals 3
const-string v0, "Address{"
invoke-static {v0}, Le/e/b/a/a;->a(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v0
iget-object v1, p0, Lx/a;->a:Lx/u;
iget-object v1, v1, Lx/u;->e:Ljava/lang/String;
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const/16 v1, 0x3a
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
iget-object v1, p0, Lx/a;->a:Lx/u;
iget v1, v1, Lx/u;->f:I
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
const-string v1, ", "
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-object v1, p0, Lx/a;->j:Ljava/net/Proxy;
if-eqz v1, :cond_0
const-string v1, "proxy="
invoke-static {v1}, Le/e/b/a/a;->a(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v1
iget-object v2, p0, Lx/a;->j:Ljava/net/Proxy;
goto :goto_0
:cond_0
const-string v1, "proxySelector="
invoke-static {v1}, Le/e/b/a/a;->a(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v1
iget-object v2, p0, Lx/a;->k:Ljava/net/ProxySelector;
:goto_0
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v1
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string v1, "}"
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

View file

@ -0,0 +1,400 @@
.class public abstract Lx/a/a;
.super Lx/a/h1;
.source "AbstractCoroutine.kt"
# interfaces
.implements Lkotlinx/coroutines/Job;
.implements Lkotlin/coroutines/Continuation;
.implements Lkotlinx/coroutines/CoroutineScope;
# annotations
.annotation system Ldalvik/annotation/Signature;
value = {
"<T:",
"Ljava/lang/Object;",
">",
"Lx/a/h1;",
"Lkotlinx/coroutines/Job;",
"Lkotlin/coroutines/Continuation<",
"TT;>;",
"Lkotlinx/coroutines/CoroutineScope;"
}
.end annotation
# instance fields
.field public final e:Lkotlin/coroutines/CoroutineContext;
.field public final f:Lkotlin/coroutines/CoroutineContext;
# direct methods
.method public constructor <init>(Lkotlin/coroutines/CoroutineContext;Z)V
.locals 0
if-eqz p1, :cond_0
invoke-direct {p0, p2}, Lx/a/h1;-><init>(Z)V
iput-object p1, p0, Lx/a/a;->f:Lkotlin/coroutines/CoroutineContext;
iget-object p1, p0, Lx/a/a;->f:Lkotlin/coroutines/CoroutineContext;
invoke-interface {p1, p0}, Lkotlin/coroutines/CoroutineContext;->plus(Lkotlin/coroutines/CoroutineContext;)Lkotlin/coroutines/CoroutineContext;
move-result-object p1
iput-object p1, p0, Lx/a/a;->e:Lkotlin/coroutines/CoroutineContext;
return-void
:cond_0
const-string p1, "parentContext"
invoke-static {p1}, Lw/u/b/j;->a(Ljava/lang/String;)V
const/4 p1, 0x0
throw p1
.end method
# virtual methods
.method public final a(Lx/a/c0;Ljava/lang/Object;Lkotlin/jvm/functions/Function2;)V
.locals 3
.annotation system Ldalvik/annotation/Signature;
value = {
"<R:",
"Ljava/lang/Object;",
">(",
"Lx/a/c0;",
"TR;",
"Lkotlin/jvm/functions/Function2<",
"-TR;-",
"Lkotlin/coroutines/Continuation<",
"-TT;>;+",
"Ljava/lang/Object;",
">;)V"
}
.end annotation
const/4 v0, 0x0
if-eqz p1, :cond_6
if-eqz p3, :cond_5
invoke-virtual {p0}, Lx/a/a;->m()V
sget-object v1, Lx/a/b0;->b:[I
invoke-virtual {p1}, Ljava/lang/Enum;->ordinal()I
move-result p1
aget p1, v1, p1
const/4 v1, 0x1
if-eq p1, v1, :cond_3
const/4 v1, 0x2
if-eq p1, v1, :cond_2
const/4 v2, 0x3
if-eq p1, v2, :cond_1
const/4 p2, 0x4
if-ne p1, p2, :cond_0
goto :goto_0
:cond_0
new-instance p1, Lw/g;
invoke-direct {p1}, Lw/g;-><init>()V
throw p1
:cond_1
invoke-static {p0}, Le/k/a/c/e/p/g;->probeCoroutineCreated(Lkotlin/coroutines/Continuation;)Lkotlin/coroutines/Continuation;
:try_start_0
invoke-interface {p0}, Lkotlin/coroutines/Continuation;->getContext()Lkotlin/coroutines/CoroutineContext;
move-result-object p1
invoke-static {p1, v0}, Lx/a/a2/y;->b(Lkotlin/coroutines/CoroutineContext;Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v0
:try_end_0
.catchall {:try_start_0 .. :try_end_0} :catchall_1
:try_start_1
invoke-static {p3, v1}, Lw/u/b/y;->beforeCheckcastToFunctionOfArity(Ljava/lang/Object;I)Ljava/lang/Object;
invoke-interface {p3, p2, p0}, Lkotlin/jvm/functions/Function2;->invoke(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
move-result-object p2
:try_end_1
.catchall {:try_start_1 .. :try_end_1} :catchall_0
:try_start_2
invoke-static {p1, v0}, Lx/a/a2/y;->a(Lkotlin/coroutines/CoroutineContext;Ljava/lang/Object;)V
:try_end_2
.catchall {:try_start_2 .. :try_end_2} :catchall_1
sget-object p1, Lw/s/g/a;->d:Lw/s/g/a;
if-eq p2, p1, :cond_4
sget-object p1, Lw/i;->d:Lw/i$a;
invoke-interface {p0, p2}, Lkotlin/coroutines/Continuation;->resumeWith(Ljava/lang/Object;)V
goto :goto_0
:catchall_0
move-exception p2
:try_start_3
invoke-static {p1, v0}, Lx/a/a2/y;->a(Lkotlin/coroutines/CoroutineContext;Ljava/lang/Object;)V
throw p2
:try_end_3
.catchall {:try_start_3 .. :try_end_3} :catchall_1
:catchall_1
move-exception p1
sget-object p2, Lw/i;->d:Lw/i$a;
invoke-static {p1}, Le/k/a/c/e/p/g;->createFailure(Ljava/lang/Throwable;)Ljava/lang/Object;
move-result-object p1
invoke-interface {p0, p1}, Lkotlin/coroutines/Continuation;->resumeWith(Ljava/lang/Object;)V
goto :goto_0
:cond_2
invoke-static {p3, p2, p0}, Le/k/a/c/e/p/g;->createCoroutineUnintercepted(Lkotlin/jvm/functions/Function2;Ljava/lang/Object;Lkotlin/coroutines/Continuation;)Lkotlin/coroutines/Continuation;
move-result-object p1
invoke-static {p1}, Le/k/a/c/e/p/g;->intercepted(Lkotlin/coroutines/Continuation;)Lkotlin/coroutines/Continuation;
move-result-object p1
sget-object p2, Lkotlin/Unit;->a:Lkotlin/Unit;
sget-object p3, Lw/i;->d:Lw/i$a;
invoke-interface {p1, p2}, Lkotlin/coroutines/Continuation;->resumeWith(Ljava/lang/Object;)V
goto :goto_0
:cond_3
invoke-static {p3, p2, p0}, Lx/a/a2/w;->a(Lkotlin/jvm/functions/Function2;Ljava/lang/Object;Lkotlin/coroutines/Continuation;)V
:cond_4
:goto_0
return-void
:cond_5
const-string p1, "block"
invoke-static {p1}, Lw/u/b/j;->a(Ljava/lang/String;)V
throw v0
:cond_6
const-string p1, "start"
invoke-static {p1}, Lw/u/b/j;->a(Ljava/lang/String;)V
throw v0
.end method
.method public a()Z
.locals 1
invoke-super {p0}, Lx/a/h1;->a()Z
move-result v0
return v0
.end method
.method public c()Lkotlin/coroutines/CoroutineContext;
.locals 1
iget-object v0, p0, Lx/a/a;->e:Lkotlin/coroutines/CoroutineContext;
return-object v0
.end method
.method public final c(Ljava/lang/Throwable;)V
.locals 1
if-eqz p1, :cond_0
iget-object v0, p0, Lx/a/a;->e:Lkotlin/coroutines/CoroutineContext;
invoke-static {v0, p1}, Le/k/a/c/e/p/g;->a(Lkotlin/coroutines/CoroutineContext;Ljava/lang/Throwable;)V
return-void
:cond_0
const-string p1, "exception"
invoke-static {p1}, Lw/u/b/j;->a(Ljava/lang/String;)V
const/4 p1, 0x0
throw p1
.end method
.method public final d(Ljava/lang/Object;)V
.locals 1
instance-of v0, p1, Lx/a/q;
if-eqz v0, :cond_1
check-cast p1, Lx/a/q;
iget-object v0, p1, Lx/a/q;->a:Ljava/lang/Throwable;
iget p1, p1, Lx/a/q;->_handled:I
if-eqz v0, :cond_0
goto :goto_0
:cond_0
const-string p1, "cause"
invoke-static {p1}, Lw/u/b/j;->a(Ljava/lang/String;)V
const/4 p1, 0x0
throw p1
:cond_1
:goto_0
return-void
.end method
.method public final getContext()Lkotlin/coroutines/CoroutineContext;
.locals 1
iget-object v0, p0, Lx/a/a;->e:Lkotlin/coroutines/CoroutineContext;
return-object v0
.end method
.method public i()Ljava/lang/String;
.locals 3
iget-object v0, p0, Lx/a/a;->e:Lkotlin/coroutines/CoroutineContext;
invoke-static {v0}, Lx/a/w;->a(Lkotlin/coroutines/CoroutineContext;)Ljava/lang/String;
move-result-object v0
if-eqz v0, :cond_0
new-instance v1, Ljava/lang/StringBuilder;
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()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-static {p0}, Lx/a/e0;->a(Ljava/lang/Object;)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
:cond_0
invoke-static {p0}, Lx/a/e0;->a(Ljava/lang/Object;)Ljava/lang/String;
move-result-object v0
return-object v0
.end method
.method public final k()V
.locals 0
invoke-virtual {p0}, Lx/a/a;->n()V
return-void
.end method
.method public l()I
.locals 1
const/4 v0, 0x0
return v0
.end method
.method public final m()V
.locals 2
iget-object v0, p0, Lx/a/a;->f:Lkotlin/coroutines/CoroutineContext;
sget-object v1, Lkotlinx/coroutines/Job;->c:Lkotlinx/coroutines/Job$a;
invoke-interface {v0, v1}, Lkotlin/coroutines/CoroutineContext;->get(Lkotlin/coroutines/CoroutineContext$b;)Lkotlin/coroutines/CoroutineContext$a;
move-result-object v0
check-cast v0, Lkotlinx/coroutines/Job;
invoke-virtual {p0, v0}, Lx/a/h1;->a(Lkotlinx/coroutines/Job;)V
return-void
.end method
.method public n()V
.locals 0
return-void
.end method
.method public final resumeWith(Ljava/lang/Object;)V
.locals 1
invoke-static {p1}, Le/k/a/c/e/p/g;->d(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object p1
invoke-virtual {p0}, Lx/a/a;->l()I
move-result v0
invoke-virtual {p0, p1, v0}, Lx/a/h1;->b(Ljava/lang/Object;I)Z
return-void
.end method

View file

@ -1,11 +1,14 @@
.class public final Lx/c0/b/b$a;
.class public final Lx/a/a0$a;
.super Ljava/lang/Object;
.source "CacheStrategy.kt"
.source "CoroutineName.kt"
# interfaces
.implements Lkotlin/coroutines/CoroutineContext$b;
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lx/c0/b/b;
value = Lx/a/a0;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
@ -13,6 +16,15 @@
name = "a"
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/lang/Object;",
"Lkotlin/coroutines/CoroutineContext$b<",
"Lx/a/a0;",
">;"
}
.end annotation
# direct methods
.method public synthetic constructor <init>(Lkotlin/jvm/internal/DefaultConstructorMarker;)V

View file

@ -0,0 +1,124 @@
.class public final Lx/a/a0;
.super Lw/s/a;
.source "CoroutineName.kt"
# annotations
.annotation system Ldalvik/annotation/MemberClasses;
value = {
Lx/a/a0$a;
}
.end annotation
# static fields
.field public static final e:Lx/a/a0$a;
# instance fields
.field public final d:Ljava/lang/String;
# direct methods
.method public static constructor <clinit>()V
.locals 2
new-instance v0, Lx/a/a0$a;
const/4 v1, 0x0
invoke-direct {v0, v1}, Lx/a/a0$a;-><init>(Lkotlin/jvm/internal/DefaultConstructorMarker;)V
sput-object v0, Lx/a/a0;->e:Lx/a/a0$a;
return-void
.end method
# virtual methods
.method public final e()Ljava/lang/String;
.locals 1
iget-object v0, p0, Lx/a/a0;->d:Ljava/lang/String;
return-object v0
.end method
.method public equals(Ljava/lang/Object;)Z
.locals 1
if-eq p0, p1, :cond_1
instance-of v0, p1, Lx/a/a0;
if-eqz v0, :cond_0
check-cast p1, Lx/a/a0;
iget-object v0, p0, Lx/a/a0;->d:Ljava/lang/String;
iget-object p1, p1, Lx/a/a0;->d:Ljava/lang/String;
invoke-static {v0, p1}, Lw/u/b/j;->areEqual(Ljava/lang/Object;Ljava/lang/Object;)Z
move-result p1
if-eqz p1, :cond_0
goto :goto_0
:cond_0
const/4 p1, 0x0
return p1
:cond_1
:goto_0
const/4 p1, 0x1
return p1
.end method
.method public hashCode()I
.locals 1
iget-object v0, p0, Lx/a/a0;->d:Ljava/lang/String;
if-eqz v0, :cond_0
invoke-virtual {v0}, Ljava/lang/Object;->hashCode()I
move-result v0
goto :goto_0
:cond_0
const/4 v0, 0x0
:goto_0
return v0
.end method
.method public toString()Ljava/lang/String;
.locals 2
const-string v0, "CoroutineName("
invoke-static {v0}, Le/e/b/a/a;->a(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v0
iget-object v1, p0, Lx/a/a0;->d:Ljava/lang/String;
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const/16 v1, 0x29
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
return-object v0
.end method

View file

@ -0,0 +1,111 @@
.class public final Lx/a/a1;
.super Lx/a/f;
.source "CancellableContinuationImpl.kt"
# instance fields
.field public final d:Lkotlin/jvm/functions/Function1;
.annotation system Ldalvik/annotation/Signature;
value = {
"Lkotlin/jvm/functions/Function1<",
"Ljava/lang/Throwable;",
"Lkotlin/Unit;",
">;"
}
.end annotation
.end field
# direct methods
.method public constructor <init>(Lkotlin/jvm/functions/Function1;)V
.locals 0
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Lkotlin/jvm/functions/Function1<",
"-",
"Ljava/lang/Throwable;",
"Lkotlin/Unit;",
">;)V"
}
.end annotation
if-eqz p1, :cond_0
invoke-direct {p0}, Lx/a/f;-><init>()V
iput-object p1, p0, Lx/a/a1;->d:Lkotlin/jvm/functions/Function1;
return-void
:cond_0
const-string p1, "handler"
invoke-static {p1}, Lw/u/b/j;->a(Ljava/lang/String;)V
const/4 p1, 0x0
throw p1
.end method
# virtual methods
.method public a(Ljava/lang/Throwable;)V
.locals 1
iget-object v0, p0, Lx/a/a1;->d:Lkotlin/jvm/functions/Function1;
invoke-interface {v0, p1}, Lkotlin/jvm/functions/Function1;->invoke(Ljava/lang/Object;)Ljava/lang/Object;
return-void
.end method
.method public bridge synthetic invoke(Ljava/lang/Object;)Ljava/lang/Object;
.locals 0
check-cast p1, Ljava/lang/Throwable;
invoke-virtual {p0, p1}, Lx/a/a1;->a(Ljava/lang/Throwable;)V
sget-object p1, Lkotlin/Unit;->a:Lkotlin/Unit;
return-object p1
.end method
.method public toString()Ljava/lang/String;
.locals 2
const-string v0, "InvokeOnCancel["
invoke-static {v0}, Le/e/b/a/a;->a(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v0
iget-object v1, p0, Lx/a/a1;->d:Lkotlin/jvm/functions/Function1;
invoke-static {v1}, Lx/a/e0;->a(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/16 v1, 0x40
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
invoke-static {p0}, Lx/a/e0;->b(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/16 v1, 0x5d
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
return-object v0
.end method

View file

@ -0,0 +1,38 @@
.class public Lx/a/a2/a;
.super Ljava/lang/Object;
.source "ArrayQueue.kt"
# annotations
.annotation system Ldalvik/annotation/Signature;
value = {
"<T:",
"Ljava/lang/Object;",
">",
"Ljava/lang/Object;"
}
.end annotation
# instance fields
.field public a:[Ljava/lang/Object;
.field public b:I
.field public c:I
# direct methods
.method public constructor <init>()V
.locals 1
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
const/16 v0, 0x10
new-array v0, v0, [Ljava/lang/Object;
iput-object v0, p0, Lx/a/a2/a;->a:[Ljava/lang/Object;
return-void
.end method

View file

@ -0,0 +1,3 @@
.class public interface abstract Lx/a/a2/a0;
.super Ljava/lang/Object;
.source "ThreadSafeHeap.kt"

View file

@ -0,0 +1,23 @@
.class public final Lx/a/a2/b;
.super Ljava/lang/Object;
.source "Atomic.kt"
# static fields
.field public static final a:Ljava/lang/Object;
# direct methods
.method public static constructor <clinit>()V
.locals 2
new-instance v0, Lx/a/a2/v;
const-string v1, "NO_DECISION"
invoke-direct {v0, v1}, Lx/a/a2/v;-><init>(Ljava/lang/String;)V
sput-object v0, Lx/a/a2/b;->a:Ljava/lang/Object;
return-void
.end method

View file

@ -0,0 +1,38 @@
.class public final Lx/a/a2/b0;
.super Ljava/lang/Object;
.source "ThreadContext.kt"
# instance fields
.field public a:[Ljava/lang/Object;
.field public b:I
.field public final c:Lkotlin/coroutines/CoroutineContext;
# direct methods
.method public constructor <init>(Lkotlin/coroutines/CoroutineContext;I)V
.locals 0
if-eqz p1, :cond_0
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
iput-object p1, p0, Lx/a/a2/b0;->c:Lkotlin/coroutines/CoroutineContext;
new-array p1, p2, [Ljava/lang/Object;
iput-object p1, p0, Lx/a/a2/b0;->a:[Ljava/lang/Object;
return-void
:cond_0
const-string p1, "context"
invoke-static {p1}, Lw/u/b/j;->a(Ljava/lang/String;)V
const/4 p1, 0x0
throw p1
.end method

View file

@ -0,0 +1,225 @@
.class public abstract Lx/a/a2/c;
.super Lx/a/a2/s;
.source "Atomic.kt"
# annotations
.annotation system Ldalvik/annotation/Signature;
value = {
"<T:",
"Ljava/lang/Object;",
">",
"Lx/a/a2/s;"
}
.end annotation
# static fields
.field public static final a:Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;
# instance fields
.field public volatile _consensus:Ljava/lang/Object;
# direct methods
.method public static constructor <clinit>()V
.locals 3
const-class v0, Lx/a/a2/c;
const-class v1, Ljava/lang/Object;
const-string v2, "_consensus"
invoke-static {v0, v1, v2}, Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;->newUpdater(Ljava/lang/Class;Ljava/lang/Class;Ljava/lang/String;)Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;
move-result-object v0
sput-object v0, Lx/a/a2/c;->a:Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;
return-void
.end method
.method public constructor <init>()V
.locals 1
invoke-direct {p0}, Lx/a/a2/s;-><init>()V
sget-object v0, Lx/a/a2/b;->a:Ljava/lang/Object;
iput-object v0, p0, Lx/a/a2/c;->_consensus:Ljava/lang/Object;
return-void
.end method
# virtual methods
.method public final a(Ljava/lang/Object;)Ljava/lang/Object;
.locals 7
iget-object v0, p0, Lx/a/a2/c;->_consensus:Ljava/lang/Object;
sget-object v1, Lx/a/a2/b;->a:Ljava/lang/Object;
const-string v2, "affected"
const/4 v3, 0x1
const/4 v4, 0x0
const/4 v5, 0x0
if-ne v0, v1, :cond_6
move-object v0, p0
check-cast v0, Lx/a/h1$c;
move-object v1, p1
check-cast v1, Lx/a/a2/n;
if-eqz v1, :cond_5
iget-object v1, v0, Lx/a/h1$c;->d:Lx/a/h1;
invoke-virtual {v1}, Lx/a/h1;->g()Ljava/lang/Object;
move-result-object v1
iget-object v0, v0, Lx/a/h1$c;->e:Ljava/lang/Object;
if-ne v1, v0, :cond_0
const/4 v0, 0x1
goto :goto_0
:cond_0
const/4 v0, 0x0
:goto_0
if-eqz v0, :cond_1
move-object v0, v5
goto :goto_1
:cond_1
sget-object v0, Lx/a/a2/m;->a:Ljava/lang/Object;
:goto_1
sget-object v1, Lx/a/a2/b;->a:Ljava/lang/Object;
if-eq v0, v1, :cond_2
const/4 v1, 0x1
goto :goto_2
:cond_2
const/4 v1, 0x0
:goto_2
if-eqz v1, :cond_4
sget-object v1, Lx/a/a2/c;->a:Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;
sget-object v6, Lx/a/a2/b;->a:Ljava/lang/Object;
invoke-virtual {v1, p0, v6, v0}, Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;->compareAndSet(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Z
move-result v1
if-eqz v1, :cond_3
goto :goto_3
:cond_3
iget-object v0, p0, Lx/a/a2/c;->_consensus:Ljava/lang/Object;
goto :goto_3
:cond_4
new-instance p1, Ljava/lang/IllegalStateException;
const-string v0, "Check failed."
invoke-virtual {v0}, Ljava/lang/Object;->toString()Ljava/lang/String;
move-result-object v0
invoke-direct {p1, v0}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
throw p1
:cond_5
invoke-static {v2}, Lw/u/b/j;->a(Ljava/lang/String;)V
throw v5
:cond_6
:goto_3
move-object v1, p0
check-cast v1, Lx/a/a2/n$a;
check-cast p1, Lx/a/a2/n;
if-eqz p1, :cond_b
if-nez v0, :cond_7
goto :goto_4
:cond_7
const/4 v3, 0x0
:goto_4
if-eqz v3, :cond_8
iget-object v2, v1, Lx/a/a2/n$a;->c:Lx/a/a2/n;
goto :goto_5
:cond_8
iget-object v2, v1, Lx/a/a2/n$a;->b:Lx/a/a2/n;
:goto_5
if-eqz v2, :cond_a
sget-object v4, Lx/a/a2/n;->d:Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;
invoke-virtual {v4, p1, v1, v2}, Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;->compareAndSet(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Z
move-result p1
if-eqz p1, :cond_a
if-eqz v3, :cond_a
iget-object p1, v1, Lx/a/a2/n$a;->c:Lx/a/a2/n;
iget-object v1, v1, Lx/a/a2/n$a;->b:Lx/a/a2/n;
if-eqz v1, :cond_9
invoke-virtual {p1, v1}, Lx/a/a2/n;->b(Lx/a/a2/n;)V
goto :goto_6
:cond_9
invoke-static {}, Lw/u/b/j;->throwNpe()V
throw v5
:cond_a
:goto_6
return-object v0
:cond_b
invoke-static {v2}, Lw/u/b/j;->a(Ljava/lang/String;)V
throw v5
.end method

View file

@ -0,0 +1,129 @@
.class public final Lx/a/a2/d;
.super Ljava/lang/Object;
.source "Concurrent.kt"
# static fields
.field public static final a:Ljava/lang/reflect/Method;
# direct methods
.method public static constructor <clinit>()V
.locals 4
:try_start_0
const-class v0, Ljava/util/concurrent/ScheduledThreadPoolExecutor;
const/4 v1, 0x1
new-array v1, v1, [Ljava/lang/Class;
const/4 v2, 0x0
sget-object v3, Ljava/lang/Boolean;->TYPE:Ljava/lang/Class;
aput-object v3, v1, v2
:try_end_0
.catchall {:try_start_0 .. :try_end_0} :catchall_0
const-string v2, "setRemoveOnCancelPolicy"
:try_start_1
invoke-virtual {v0, v2, v1}, Ljava/lang/Class;->getMethod(Ljava/lang/String;[Ljava/lang/Class;)Ljava/lang/reflect/Method;
move-result-object v0
:try_end_1
.catchall {:try_start_1 .. :try_end_1} :catchall_0
goto :goto_0
:catchall_0
const/4 v0, 0x0
:goto_0
sput-object v0, Lx/a/a2/d;->a:Ljava/lang/reflect/Method;
return-void
.end method
.method public static final a(I)Ljava/util/Set;
.locals 1
.annotation system Ldalvik/annotation/Signature;
value = {
"<E:",
"Ljava/lang/Object;",
">(I)",
"Ljava/util/Set<",
"TE;>;"
}
.end annotation
new-instance v0, Ljava/util/IdentityHashMap;
invoke-direct {v0, p0}, Ljava/util/IdentityHashMap;-><init>(I)V
invoke-static {v0}, Ljava/util/Collections;->newSetFromMap(Ljava/util/Map;)Ljava/util/Set;
move-result-object p0
const-string v0, "Collections.newSetFromMa\u2026ityHashMap(expectedSize))"
invoke-static {p0, v0}, Lw/u/b/j;->checkExpressionValueIsNotNull(Ljava/lang/Object;Ljava/lang/String;)V
return-object p0
.end method
.method public static final a(Ljava/util/concurrent/Executor;)Z
.locals 5
const/4 v0, 0x0
if-eqz p0, :cond_2
const/4 v1, 0x1
:try_start_0
instance-of v2, p0, Ljava/util/concurrent/ScheduledExecutorService;
if-nez v2, :cond_0
move-object p0, v0
:cond_0
check-cast p0, Ljava/util/concurrent/ScheduledExecutorService;
const/4 v0, 0x0
if-eqz p0, :cond_1
sget-object v2, Lx/a/a2/d;->a:Ljava/lang/reflect/Method;
if-eqz v2, :cond_1
new-array v3, v1, [Ljava/lang/Object;
invoke-static {v1}, Ljava/lang/Boolean;->valueOf(Z)Ljava/lang/Boolean;
move-result-object v4
aput-object v4, v3, v0
invoke-virtual {v2, p0, v3}, Ljava/lang/reflect/Method;->invoke(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;
:try_end_0
.catchall {:try_start_0 .. :try_end_0} :catchall_0
return v1
:cond_1
return v0
:catchall_0
return v1
:cond_2
const-string p0, "executor"
invoke-static {p0}, Lw/u/b/j;->a(Ljava/lang/String;)V
throw v0
.end method

View file

@ -0,0 +1,43 @@
.class public final Lx/a/a2/e;
.super Ljava/lang/Object;
.source "Scopes.kt"
# interfaces
.implements Lkotlinx/coroutines/CoroutineScope;
# instance fields
.field public final d:Lkotlin/coroutines/CoroutineContext;
# direct methods
.method public constructor <init>(Lkotlin/coroutines/CoroutineContext;)V
.locals 0
if-eqz p1, :cond_0
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
iput-object p1, p0, Lx/a/a2/e;->d:Lkotlin/coroutines/CoroutineContext;
return-void
:cond_0
const-string p1, "context"
invoke-static {p1}, Lw/u/b/j;->a(Ljava/lang/String;)V
const/4 p1, 0x0
throw p1
.end method
# virtual methods
.method public c()Lkotlin/coroutines/CoroutineContext;
.locals 1
iget-object v0, p0, Lx/a/a2/e;->d:Lkotlin/coroutines/CoroutineContext;
return-object v0
.end method

View file

@ -0,0 +1,132 @@
.class public final Lx/a/a2/f;
.super Lw/u/b/k;
.source "ExceptionsConstuctor.kt"
# interfaces
.implements Lkotlin/jvm/functions/Function1;
# annotations
.annotation system Ldalvik/annotation/Signature;
value = {
"Lw/u/b/k;",
"Lkotlin/jvm/functions/Function1<",
"Ljava/lang/Throwable;",
"Ljava/lang/Throwable;",
">;"
}
.end annotation
# instance fields
.field public final synthetic $constructor$inlined:Ljava/lang/reflect/Constructor;
# direct methods
.method public constructor <init>(Ljava/lang/reflect/Constructor;)V
.locals 0
iput-object p1, p0, Lx/a/a2/f;->$constructor$inlined:Ljava/lang/reflect/Constructor;
const/4 p1, 0x1
invoke-direct {p0, p1}, Lw/u/b/k;-><init>(I)V
return-void
.end method
# virtual methods
.method public bridge synthetic invoke(Ljava/lang/Object;)Ljava/lang/Object;
.locals 0
check-cast p1, Ljava/lang/Throwable;
invoke-virtual {p0, p1}, Lx/a/a2/f;->invoke(Ljava/lang/Throwable;)Ljava/lang/Throwable;
move-result-object p1
return-object p1
.end method
.method public final invoke(Ljava/lang/Throwable;)Ljava/lang/Throwable;
.locals 5
const/4 v0, 0x0
if-eqz p1, :cond_2
:try_start_0
sget-object v1, Lw/i;->d:Lw/i$a;
iget-object v1, p0, Lx/a/a2/f;->$constructor$inlined:Ljava/lang/reflect/Constructor;
const/4 v2, 0x2
new-array v2, v2, [Ljava/lang/Object;
const/4 v3, 0x0
invoke-virtual {p1}, Ljava/lang/Throwable;->getMessage()Ljava/lang/String;
move-result-object v4
aput-object v4, v2, v3
const/4 v3, 0x1
aput-object p1, v2, v3
invoke-virtual {v1, v2}, Ljava/lang/reflect/Constructor;->newInstance([Ljava/lang/Object;)Ljava/lang/Object;
move-result-object p1
if-eqz p1, :cond_0
check-cast p1, Ljava/lang/Throwable;
invoke-static {p1}, Lw/i;->constructor-impl(Ljava/lang/Object;)Ljava/lang/Object;
goto :goto_0
:cond_0
new-instance p1, Lw/l;
const-string v1, "null cannot be cast to non-null type kotlin.Throwable"
invoke-direct {p1, v1}, Lw/l;-><init>(Ljava/lang/String;)V
throw p1
:try_end_0
.catchall {:try_start_0 .. :try_end_0} :catchall_0
:catchall_0
move-exception p1
sget-object v1, Lw/i;->d:Lw/i$a;
invoke-static {p1}, Le/k/a/c/e/p/g;->createFailure(Ljava/lang/Throwable;)Ljava/lang/Object;
move-result-object p1
:goto_0
invoke-static {p1}, Lw/i;->isFailure-impl(Ljava/lang/Object;)Z
move-result v1
if-eqz v1, :cond_1
move-object p1, v0
:cond_1
check-cast p1, Ljava/lang/Throwable;
return-object p1
:cond_2
const-string p1, "e"
invoke-static {p1}, Lw/u/b/j;->a(Ljava/lang/String;)V
throw v0
.end method

View file

@ -0,0 +1,124 @@
.class public final Lx/a/a2/g;
.super Lw/u/b/k;
.source "ExceptionsConstuctor.kt"
# interfaces
.implements Lkotlin/jvm/functions/Function1;
# annotations
.annotation system Ldalvik/annotation/Signature;
value = {
"Lw/u/b/k;",
"Lkotlin/jvm/functions/Function1<",
"Ljava/lang/Throwable;",
"Ljava/lang/Throwable;",
">;"
}
.end annotation
# instance fields
.field public final synthetic $constructor$inlined:Ljava/lang/reflect/Constructor;
# direct methods
.method public constructor <init>(Ljava/lang/reflect/Constructor;)V
.locals 0
iput-object p1, p0, Lx/a/a2/g;->$constructor$inlined:Ljava/lang/reflect/Constructor;
const/4 p1, 0x1
invoke-direct {p0, p1}, Lw/u/b/k;-><init>(I)V
return-void
.end method
# virtual methods
.method public bridge synthetic invoke(Ljava/lang/Object;)Ljava/lang/Object;
.locals 0
check-cast p1, Ljava/lang/Throwable;
invoke-virtual {p0, p1}, Lx/a/a2/g;->invoke(Ljava/lang/Throwable;)Ljava/lang/Throwable;
move-result-object p1
return-object p1
.end method
.method public final invoke(Ljava/lang/Throwable;)Ljava/lang/Throwable;
.locals 4
const/4 v0, 0x0
if-eqz p1, :cond_2
:try_start_0
sget-object v1, Lw/i;->d:Lw/i$a;
iget-object v1, p0, Lx/a/a2/g;->$constructor$inlined:Ljava/lang/reflect/Constructor;
const/4 v2, 0x1
new-array v2, v2, [Ljava/lang/Object;
const/4 v3, 0x0
aput-object p1, v2, v3
invoke-virtual {v1, v2}, Ljava/lang/reflect/Constructor;->newInstance([Ljava/lang/Object;)Ljava/lang/Object;
move-result-object p1
if-eqz p1, :cond_0
check-cast p1, Ljava/lang/Throwable;
invoke-static {p1}, Lw/i;->constructor-impl(Ljava/lang/Object;)Ljava/lang/Object;
goto :goto_0
:cond_0
new-instance p1, Lw/l;
const-string v1, "null cannot be cast to non-null type kotlin.Throwable"
invoke-direct {p1, v1}, Lw/l;-><init>(Ljava/lang/String;)V
throw p1
:try_end_0
.catchall {:try_start_0 .. :try_end_0} :catchall_0
:catchall_0
move-exception p1
sget-object v1, Lw/i;->d:Lw/i$a;
invoke-static {p1}, Le/k/a/c/e/p/g;->createFailure(Ljava/lang/Throwable;)Ljava/lang/Object;
move-result-object p1
:goto_0
invoke-static {p1}, Lw/i;->isFailure-impl(Ljava/lang/Object;)Z
move-result v1
if-eqz v1, :cond_1
move-object p1, v0
:cond_1
check-cast p1, Ljava/lang/Throwable;
return-object p1
:cond_2
const-string p1, "e"
invoke-static {p1}, Lw/u/b/j;->a(Ljava/lang/String;)V
throw v0
.end method

View file

@ -0,0 +1,132 @@
.class public final Lx/a/a2/h;
.super Lw/u/b/k;
.source "ExceptionsConstuctor.kt"
# interfaces
.implements Lkotlin/jvm/functions/Function1;
# annotations
.annotation system Ldalvik/annotation/Signature;
value = {
"Lw/u/b/k;",
"Lkotlin/jvm/functions/Function1<",
"Ljava/lang/Throwable;",
"Ljava/lang/Throwable;",
">;"
}
.end annotation
# instance fields
.field public final synthetic $constructor$inlined:Ljava/lang/reflect/Constructor;
# direct methods
.method public constructor <init>(Ljava/lang/reflect/Constructor;)V
.locals 0
iput-object p1, p0, Lx/a/a2/h;->$constructor$inlined:Ljava/lang/reflect/Constructor;
const/4 p1, 0x1
invoke-direct {p0, p1}, Lw/u/b/k;-><init>(I)V
return-void
.end method
# virtual methods
.method public bridge synthetic invoke(Ljava/lang/Object;)Ljava/lang/Object;
.locals 0
check-cast p1, Ljava/lang/Throwable;
invoke-virtual {p0, p1}, Lx/a/a2/h;->invoke(Ljava/lang/Throwable;)Ljava/lang/Throwable;
move-result-object p1
return-object p1
.end method
.method public final invoke(Ljava/lang/Throwable;)Ljava/lang/Throwable;
.locals 5
const/4 v0, 0x0
if-eqz p1, :cond_2
:try_start_0
sget-object v1, Lw/i;->d:Lw/i$a;
iget-object v1, p0, Lx/a/a2/h;->$constructor$inlined:Ljava/lang/reflect/Constructor;
const/4 v2, 0x1
new-array v2, v2, [Ljava/lang/Object;
const/4 v3, 0x0
invoke-virtual {p1}, Ljava/lang/Throwable;->getMessage()Ljava/lang/String;
move-result-object v4
aput-object v4, v2, v3
invoke-virtual {v1, v2}, Ljava/lang/reflect/Constructor;->newInstance([Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v1
if-eqz v1, :cond_0
check-cast v1, Ljava/lang/Throwable;
invoke-virtual {v1, p1}, Ljava/lang/Throwable;->initCause(Ljava/lang/Throwable;)Ljava/lang/Throwable;
invoke-static {v1}, Lw/i;->constructor-impl(Ljava/lang/Object;)Ljava/lang/Object;
move-object p1, v1
goto :goto_0
:cond_0
new-instance p1, Lw/l;
const-string v1, "null cannot be cast to non-null type kotlin.Throwable"
invoke-direct {p1, v1}, Lw/l;-><init>(Ljava/lang/String;)V
throw p1
:try_end_0
.catchall {:try_start_0 .. :try_end_0} :catchall_0
:catchall_0
move-exception p1
sget-object v1, Lw/i;->d:Lw/i$a;
invoke-static {p1}, Le/k/a/c/e/p/g;->createFailure(Ljava/lang/Throwable;)Ljava/lang/Object;
move-result-object p1
:goto_0
invoke-static {p1}, Lw/i;->isFailure-impl(Ljava/lang/Object;)Z
move-result v1
if-eqz v1, :cond_1
move-object p1, v0
:cond_1
check-cast p1, Ljava/lang/Throwable;
return-object p1
:cond_2
const-string p1, "e"
invoke-static {p1}, Lw/u/b/j;->a(Ljava/lang/String;)V
throw v0
.end method

View file

@ -0,0 +1,124 @@
.class public final Lx/a/a2/i;
.super Lw/u/b/k;
.source "ExceptionsConstuctor.kt"
# interfaces
.implements Lkotlin/jvm/functions/Function1;
# annotations
.annotation system Ldalvik/annotation/Signature;
value = {
"Lw/u/b/k;",
"Lkotlin/jvm/functions/Function1<",
"Ljava/lang/Throwable;",
"Ljava/lang/Throwable;",
">;"
}
.end annotation
# instance fields
.field public final synthetic $constructor$inlined:Ljava/lang/reflect/Constructor;
# direct methods
.method public constructor <init>(Ljava/lang/reflect/Constructor;)V
.locals 0
iput-object p1, p0, Lx/a/a2/i;->$constructor$inlined:Ljava/lang/reflect/Constructor;
const/4 p1, 0x1
invoke-direct {p0, p1}, Lw/u/b/k;-><init>(I)V
return-void
.end method
# virtual methods
.method public bridge synthetic invoke(Ljava/lang/Object;)Ljava/lang/Object;
.locals 0
check-cast p1, Ljava/lang/Throwable;
invoke-virtual {p0, p1}, Lx/a/a2/i;->invoke(Ljava/lang/Throwable;)Ljava/lang/Throwable;
move-result-object p1
return-object p1
.end method
.method public final invoke(Ljava/lang/Throwable;)Ljava/lang/Throwable;
.locals 3
const/4 v0, 0x0
if-eqz p1, :cond_2
:try_start_0
sget-object v1, Lw/i;->d:Lw/i$a;
iget-object v1, p0, Lx/a/a2/i;->$constructor$inlined:Ljava/lang/reflect/Constructor;
const/4 v2, 0x0
new-array v2, v2, [Ljava/lang/Object;
invoke-virtual {v1, v2}, Ljava/lang/reflect/Constructor;->newInstance([Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v1
if-eqz v1, :cond_0
check-cast v1, Ljava/lang/Throwable;
invoke-virtual {v1, p1}, Ljava/lang/Throwable;->initCause(Ljava/lang/Throwable;)Ljava/lang/Throwable;
invoke-static {v1}, Lw/i;->constructor-impl(Ljava/lang/Object;)Ljava/lang/Object;
move-object p1, v1
goto :goto_0
:cond_0
new-instance p1, Lw/l;
const-string v1, "null cannot be cast to non-null type kotlin.Throwable"
invoke-direct {p1, v1}, Lw/l;-><init>(Ljava/lang/String;)V
throw p1
:try_end_0
.catchall {:try_start_0 .. :try_end_0} :catchall_0
:catchall_0
move-exception p1
sget-object v1, Lw/i;->d:Lw/i$a;
invoke-static {p1}, Le/k/a/c/e/p/g;->createFailure(Ljava/lang/Throwable;)Ljava/lang/Object;
move-result-object p1
:goto_0
invoke-static {p1}, Lw/i;->isFailure-impl(Ljava/lang/Object;)Z
move-result v1
if-eqz v1, :cond_1
move-object p1, v0
:cond_1
check-cast p1, Ljava/lang/Throwable;
return-object p1
:cond_2
const-string p1, "e"
invoke-static {p1}, Lw/u/b/j;->a(Ljava/lang/String;)V
throw v0
.end method

View file

@ -0,0 +1,85 @@
.class public final Lx/a/a2/j$a;
.super Ljava/lang/Object;
.source "Comparisons.kt"
# interfaces
.implements Ljava/util/Comparator;
# annotations
.annotation system Ldalvik/annotation/EnclosingMethod;
value = Lx/a/a2/j;->a(Ljava/lang/Throwable;)Ljava/lang/Throwable;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x19
name = null
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"<T:",
"Ljava/lang/Object;",
">",
"Ljava/lang/Object;",
"Ljava/util/Comparator<",
"TT;>;"
}
.end annotation
# direct methods
.method public constructor <init>()V
.locals 0
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
# virtual methods
.method public final compare(Ljava/lang/Object;Ljava/lang/Object;)I
.locals 1
.annotation system Ldalvik/annotation/Signature;
value = {
"(TT;TT;)I"
}
.end annotation
check-cast p2, Ljava/lang/reflect/Constructor;
const-string v0, "it"
invoke-static {p2, v0}, Lw/u/b/j;->checkExpressionValueIsNotNull(Ljava/lang/Object;Ljava/lang/String;)V
invoke-virtual {p2}, Ljava/lang/reflect/Constructor;->getParameterTypes()[Ljava/lang/Class;
move-result-object p2
array-length p2, p2
invoke-static {p2}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object p2
check-cast p1, Ljava/lang/reflect/Constructor;
invoke-static {p1, v0}, Lw/u/b/j;->checkExpressionValueIsNotNull(Ljava/lang/Object;Ljava/lang/String;)V
invoke-virtual {p1}, Ljava/lang/reflect/Constructor;->getParameterTypes()[Ljava/lang/Class;
move-result-object p1
array-length p1, p1
invoke-static {p1}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object p1
invoke-static {p2, p1}, Le/k/a/c/e/p/g;->compareValues(Ljava/lang/Comparable;Ljava/lang/Comparable;)I
move-result p1
return p1
.end method

View file

@ -0,0 +1,76 @@
.class public final Lx/a/a2/j$b;
.super Lw/u/b/k;
.source "ExceptionsConstuctor.kt"
# interfaces
.implements Lkotlin/jvm/functions/Function1;
# annotations
.annotation system Ldalvik/annotation/EnclosingMethod;
value = Lx/a/a2/j;->a(Ljava/lang/Throwable;)Ljava/lang/Throwable;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x19
name = null
.end annotation
# static fields
.field public static final d:Lx/a/a2/j$b;
# direct methods
.method public static constructor <clinit>()V
.locals 1
new-instance v0, Lx/a/a2/j$b;
invoke-direct {v0}, Lx/a/a2/j$b;-><init>()V
sput-object v0, Lx/a/a2/j$b;->d:Lx/a/a2/j$b;
return-void
.end method
.method public constructor <init>()V
.locals 1
const/4 v0, 0x1
invoke-direct {p0, v0}, Lw/u/b/k;-><init>(I)V
return-void
.end method
# virtual methods
.method public bridge synthetic invoke(Ljava/lang/Object;)Ljava/lang/Object;
.locals 0
check-cast p1, Ljava/lang/Throwable;
invoke-virtual {p0, p1}, Lx/a/a2/j$b;->invoke(Ljava/lang/Throwable;)Ljava/lang/Void;
move-result-object p1
return-object p1
.end method
.method public final invoke(Ljava/lang/Throwable;)Ljava/lang/Void;
.locals 1
const/4 v0, 0x0
if-eqz p1, :cond_0
return-object v0
:cond_0
const-string p1, "it"
invoke-static {p1}, Lw/u/b/j;->a(Ljava/lang/String;)V
throw v0
.end method

View file

@ -0,0 +1,76 @@
.class public final Lx/a/a2/j$c;
.super Lw/u/b/k;
.source "ExceptionsConstuctor.kt"
# interfaces
.implements Lkotlin/jvm/functions/Function1;
# annotations
.annotation system Ldalvik/annotation/EnclosingMethod;
value = Lx/a/a2/j;->a(Ljava/lang/Throwable;)Ljava/lang/Throwable;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x19
name = null
.end annotation
# static fields
.field public static final d:Lx/a/a2/j$c;
# direct methods
.method public static constructor <clinit>()V
.locals 1
new-instance v0, Lx/a/a2/j$c;
invoke-direct {v0}, Lx/a/a2/j$c;-><init>()V
sput-object v0, Lx/a/a2/j$c;->d:Lx/a/a2/j$c;
return-void
.end method
.method public constructor <init>()V
.locals 1
const/4 v0, 0x1
invoke-direct {p0, v0}, Lw/u/b/k;-><init>(I)V
return-void
.end method
# virtual methods
.method public bridge synthetic invoke(Ljava/lang/Object;)Ljava/lang/Object;
.locals 0
check-cast p1, Ljava/lang/Throwable;
invoke-virtual {p0, p1}, Lx/a/a2/j$c;->invoke(Ljava/lang/Throwable;)Ljava/lang/Void;
move-result-object p1
return-object p1
.end method
.method public final invoke(Ljava/lang/Throwable;)Ljava/lang/Void;
.locals 1
const/4 v0, 0x0
if-eqz p1, :cond_0
return-object v0
:cond_0
const-string p1, "it"
invoke-static {p1}, Lw/u/b/j;->a(Ljava/lang/String;)V
throw v0
.end method

View file

@ -0,0 +1,656 @@
.class public final Lx/a/a2/j;
.super Ljava/lang/Object;
.source "ExceptionsConstuctor.kt"
# static fields
.field public static final a:I
.field public static final b:Ljava/util/concurrent/locks/ReentrantReadWriteLock;
.field public static final c:Ljava/util/WeakHashMap;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/WeakHashMap<",
"Ljava/lang/Class<",
"+",
"Ljava/lang/Throwable;",
">;",
"Lkotlin/jvm/functions/Function1<",
"Ljava/lang/Throwable;",
"Ljava/lang/Throwable;",
">;>;"
}
.end annotation
.end field
# direct methods
.method public static constructor <clinit>()V
.locals 2
const-class v0, Ljava/lang/Throwable;
const/4 v1, -0x1
invoke-static {v0, v1}, Lx/a/a2/j;->a(Ljava/lang/Class;I)I
move-result v0
sput v0, Lx/a/a2/j;->a:I
new-instance v0, Ljava/util/concurrent/locks/ReentrantReadWriteLock;
invoke-direct {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;-><init>()V
sput-object v0, Lx/a/a2/j;->b:Ljava/util/concurrent/locks/ReentrantReadWriteLock;
new-instance v0, Ljava/util/WeakHashMap;
invoke-direct {v0}, Ljava/util/WeakHashMap;-><init>()V
sput-object v0, Lx/a/a2/j;->c:Ljava/util/WeakHashMap;
return-void
.end method
.method public static final a(Ljava/lang/Class;I)I
.locals 2
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Ljava/lang/Class<",
"*>;I)I"
}
.end annotation
invoke-static {p0}, Le/k/a/c/e/p/g;->getKotlinClass(Ljava/lang/Class;)Lw/y/b;
:try_start_0
sget-object v0, Lw/i;->d:Lw/i$a;
const/4 v0, 0x0
const/4 v1, 0x1
invoke-static {p0, v0, v1}, Lx/a/a2/j;->a(Ljava/lang/Class;II)I
move-result p0
invoke-static {p0}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object p0
invoke-static {p0}, Lw/i;->constructor-impl(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object p0
:try_end_0
.catchall {:try_start_0 .. :try_end_0} :catchall_0
goto :goto_0
:catchall_0
move-exception p0
sget-object v0, Lw/i;->d:Lw/i$a;
invoke-static {p0}, Le/k/a/c/e/p/g;->createFailure(Ljava/lang/Throwable;)Ljava/lang/Object;
move-result-object p0
invoke-static {p0}, Lw/i;->constructor-impl(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object p0
:goto_0
invoke-static {p1}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object p1
invoke-static {p0}, Lw/i;->isFailure-impl(Ljava/lang/Object;)Z
move-result v0
if-eqz v0, :cond_0
move-object p0, p1
:cond_0
check-cast p0, Ljava/lang/Number;
invoke-virtual {p0}, Ljava/lang/Number;->intValue()I
move-result p0
return p0
.end method
.method public static synthetic a(Ljava/lang/Class;II)I
.locals 6
and-int/lit8 p2, p2, 0x1
const/4 v0, 0x0
if-eqz p2, :cond_0
const/4 p1, 0x0
:cond_0
:goto_0
invoke-virtual {p0}, Ljava/lang/Class;->getDeclaredFields()[Ljava/lang/reflect/Field;
move-result-object p2
const-string v1, "declaredFields"
invoke-static {p2, v1}, Lw/u/b/j;->checkExpressionValueIsNotNull(Ljava/lang/Object;Ljava/lang/String;)V
array-length v1, p2
const/4 v2, 0x0
const/4 v3, 0x0
:goto_1
if-ge v2, v1, :cond_2
aget-object v4, p2, v2
const-string v5, "it"
invoke-static {v4, v5}, Lw/u/b/j;->checkExpressionValueIsNotNull(Ljava/lang/Object;Ljava/lang/String;)V
invoke-virtual {v4}, Ljava/lang/reflect/Field;->getModifiers()I
move-result v4
invoke-static {v4}, Ljava/lang/reflect/Modifier;->isStatic(I)Z
move-result v4
xor-int/lit8 v4, v4, 0x1
if-eqz v4, :cond_1
add-int/lit8 v3, v3, 0x1
:cond_1
add-int/lit8 v2, v2, 0x1
goto :goto_1
:cond_2
add-int/2addr p1, v3
invoke-virtual {p0}, Ljava/lang/Class;->getSuperclass()Ljava/lang/Class;
move-result-object p0
if-eqz p0, :cond_3
goto :goto_0
:cond_3
return p1
.end method
.method public static final a(Ljava/lang/Throwable;)Ljava/lang/Throwable;
.locals 9
.annotation system Ldalvik/annotation/Signature;
value = {
"<E:",
"Ljava/lang/Throwable;",
">(TE;)TE;"
}
.end annotation
const/4 v0, 0x0
if-eqz p0, :cond_15
instance-of v1, p0, Lx/a/v;
if-eqz v1, :cond_1
:try_start_0
sget-object v1, Lw/i;->d:Lw/i$a;
check-cast p0, Lx/a/v;
invoke-interface {p0}, Lx/a/v;->a()Ljava/lang/Throwable;
move-result-object p0
invoke-static {p0}, Lw/i;->constructor-impl(Ljava/lang/Object;)Ljava/lang/Object;
:try_end_0
.catchall {:try_start_0 .. :try_end_0} :catchall_0
goto :goto_0
:catchall_0
move-exception p0
sget-object v1, Lw/i;->d:Lw/i$a;
invoke-static {p0}, Le/k/a/c/e/p/g;->createFailure(Ljava/lang/Throwable;)Ljava/lang/Object;
move-result-object p0
:goto_0
invoke-static {p0}, Lw/i;->isFailure-impl(Ljava/lang/Object;)Z
move-result v1
if-eqz v1, :cond_0
move-object p0, v0
:cond_0
check-cast p0, Ljava/lang/Throwable;
return-object p0
:cond_1
sget-object v1, Lx/a/a2/j;->b:Ljava/util/concurrent/locks/ReentrantReadWriteLock;
invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;->readLock()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;
move-result-object v1
invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;->lock()V
:try_start_1
sget-object v2, Lx/a/a2/j;->c:Ljava/util/WeakHashMap;
invoke-virtual {p0}, Ljava/lang/Object;->getClass()Ljava/lang/Class;
move-result-object v3
invoke-virtual {v2, v3}, Ljava/util/WeakHashMap;->get(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v2
check-cast v2, Lkotlin/jvm/functions/Function1;
:try_end_1
.catchall {:try_start_1 .. :try_end_1} :catchall_3
invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;->unlock()V
if-eqz v2, :cond_2
invoke-interface {v2, p0}, Lkotlin/jvm/functions/Function1;->invoke(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object p0
check-cast p0, Ljava/lang/Throwable;
return-object p0
:cond_2
sget v1, Lx/a/a2/j;->a:I
invoke-virtual {p0}, Ljava/lang/Object;->getClass()Ljava/lang/Class;
move-result-object v2
const/4 v3, 0x0
invoke-static {v2, v3}, Lx/a/a2/j;->a(Ljava/lang/Class;I)I
move-result v2
if-eq v1, v2, :cond_7
sget-object v1, Lx/a/a2/j;->b:Ljava/util/concurrent/locks/ReentrantReadWriteLock;
invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;->readLock()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;
move-result-object v2
invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;->getWriteHoldCount()I
move-result v4
if-nez v4, :cond_3
invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;->getReadHoldCount()I
move-result v4
goto :goto_1
:cond_3
const/4 v4, 0x0
:goto_1
const/4 v5, 0x0
:goto_2
if-ge v5, v4, :cond_4
invoke-virtual {v2}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;->unlock()V
add-int/lit8 v5, v5, 0x1
goto :goto_2
:cond_4
invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;->writeLock()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;
move-result-object v1
invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;->lock()V
:try_start_2
sget-object v5, Lx/a/a2/j;->c:Ljava/util/WeakHashMap;
invoke-virtual {p0}, Ljava/lang/Object;->getClass()Ljava/lang/Class;
move-result-object p0
sget-object v6, Lx/a/a2/j$b;->d:Lx/a/a2/j$b;
invoke-interface {v5, p0, v6}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
:try_end_2
.catchall {:try_start_2 .. :try_end_2} :catchall_1
:goto_3
if-ge v3, v4, :cond_5
invoke-virtual {v2}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;->lock()V
add-int/lit8 v3, v3, 0x1
goto :goto_3
:cond_5
invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;->unlock()V
return-object v0
:catchall_1
move-exception p0
:goto_4
if-ge v3, v4, :cond_6
invoke-virtual {v2}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;->lock()V
add-int/lit8 v3, v3, 0x1
goto :goto_4
:cond_6
invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;->unlock()V
throw p0
:cond_7
invoke-virtual {p0}, Ljava/lang/Object;->getClass()Ljava/lang/Class;
move-result-object v1
invoke-virtual {v1}, Ljava/lang/Class;->getConstructors()[Ljava/lang/reflect/Constructor;
move-result-object v1
const-string v2, "exception.javaClass.constructors"
invoke-static {v1, v2}, Lw/u/b/j;->checkExpressionValueIsNotNull(Ljava/lang/Object;Ljava/lang/String;)V
new-instance v2, Lx/a/a2/j$a;
invoke-direct {v2}, Lx/a/a2/j$a;-><init>()V
const-string v4, "$this$sortedWith"
invoke-static {v1, v4}, Lw/u/b/j;->checkParameterIsNotNull(Ljava/lang/Object;Ljava/lang/String;)V
const-string v4, "comparator"
invoke-static {v2, v4}, Lw/u/b/j;->checkParameterIsNotNull(Ljava/lang/Object;Ljava/lang/String;)V
invoke-static {v1, v2}, Le/k/a/c/e/p/g;->sortedArrayWith([Ljava/lang/Object;Ljava/util/Comparator;)[Ljava/lang/Object;
move-result-object v1
invoke-static {v1}, Le/k/a/c/e/p/g;->asList([Ljava/lang/Object;)Ljava/util/List;
move-result-object v1
invoke-interface {v1}, Ljava/util/List;->iterator()Ljava/util/Iterator;
move-result-object v1
move-object v2, v0
:cond_8
invoke-interface {v1}, Ljava/util/Iterator;->hasNext()Z
move-result v4
if-eqz v4, :cond_e
invoke-interface {v1}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v2
check-cast v2, Ljava/lang/reflect/Constructor;
const-string v4, "constructor"
invoke-static {v2, v4}, Lw/u/b/j;->checkExpressionValueIsNotNull(Ljava/lang/Object;Ljava/lang/String;)V
invoke-virtual {v2}, Ljava/lang/reflect/Constructor;->getParameterTypes()[Ljava/lang/Class;
move-result-object v4
array-length v5, v4
if-eqz v5, :cond_d
const/4 v6, 0x1
if-eq v5, v6, :cond_a
const/4 v7, 0x2
if-eq v5, v7, :cond_9
goto :goto_5
:cond_9
aget-object v5, v4, v3
const-class v7, Ljava/lang/String;
invoke-static {v5, v7}, Lw/u/b/j;->areEqual(Ljava/lang/Object;Ljava/lang/Object;)Z
move-result v5
if-eqz v5, :cond_c
aget-object v4, v4, v6
const-class v5, Ljava/lang/Throwable;
invoke-static {v4, v5}, Lw/u/b/j;->areEqual(Ljava/lang/Object;Ljava/lang/Object;)Z
move-result v4
if-eqz v4, :cond_c
new-instance v4, Lx/a/a2/f;
invoke-direct {v4, v2}, Lx/a/a2/f;-><init>(Ljava/lang/reflect/Constructor;)V
goto :goto_6
:cond_a
aget-object v4, v4, v3
const-class v5, Ljava/lang/Throwable;
invoke-static {v4, v5}, Lw/u/b/j;->areEqual(Ljava/lang/Object;Ljava/lang/Object;)Z
move-result v5
if-eqz v5, :cond_b
new-instance v4, Lx/a/a2/g;
invoke-direct {v4, v2}, Lx/a/a2/g;-><init>(Ljava/lang/reflect/Constructor;)V
goto :goto_6
:cond_b
const-class v5, Ljava/lang/String;
invoke-static {v4, v5}, Lw/u/b/j;->areEqual(Ljava/lang/Object;Ljava/lang/Object;)Z
move-result v4
if-eqz v4, :cond_c
new-instance v4, Lx/a/a2/h;
invoke-direct {v4, v2}, Lx/a/a2/h;-><init>(Ljava/lang/reflect/Constructor;)V
goto :goto_6
:cond_c
:goto_5
move-object v2, v0
goto :goto_7
:cond_d
new-instance v4, Lx/a/a2/i;
invoke-direct {v4, v2}, Lx/a/a2/i;-><init>(Ljava/lang/reflect/Constructor;)V
:goto_6
move-object v2, v4
:goto_7
if-eqz v2, :cond_8
:cond_e
sget-object v1, Lx/a/a2/j;->b:Ljava/util/concurrent/locks/ReentrantReadWriteLock;
invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;->readLock()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;
move-result-object v4
invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;->getWriteHoldCount()I
move-result v5
if-nez v5, :cond_f
invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;->getReadHoldCount()I
move-result v5
goto :goto_8
:cond_f
const/4 v5, 0x0
:goto_8
const/4 v6, 0x0
:goto_9
if-ge v6, v5, :cond_10
invoke-virtual {v4}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;->unlock()V
add-int/lit8 v6, v6, 0x1
goto :goto_9
:cond_10
invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;->writeLock()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;
move-result-object v1
invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;->lock()V
:try_start_3
sget-object v6, Lx/a/a2/j;->c:Ljava/util/WeakHashMap;
invoke-virtual {p0}, Ljava/lang/Object;->getClass()Ljava/lang/Class;
move-result-object v7
if-eqz v2, :cond_11
move-object v8, v2
goto :goto_a
:cond_11
sget-object v8, Lx/a/a2/j$c;->d:Lx/a/a2/j$c;
:goto_a
invoke-interface {v6, v7, v8}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
:try_end_3
.catchall {:try_start_3 .. :try_end_3} :catchall_2
:goto_b
if-ge v3, v5, :cond_12
invoke-virtual {v4}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;->lock()V
add-int/lit8 v3, v3, 0x1
goto :goto_b
:cond_12
invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;->unlock()V
if-eqz v2, :cond_13
invoke-interface {v2, p0}, Lkotlin/jvm/functions/Function1;->invoke(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object p0
move-object v0, p0
check-cast v0, Ljava/lang/Throwable;
:cond_13
return-object v0
:catchall_2
move-exception p0
:goto_c
if-ge v3, v5, :cond_14
invoke-virtual {v4}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;->lock()V
add-int/lit8 v3, v3, 0x1
goto :goto_c
:cond_14
invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;->unlock()V
throw p0
:catchall_3
move-exception p0
invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;->unlock()V
throw p0
:cond_15
const-string p0, "exception"
invoke-static {p0}, Lw/u/b/j;->a(Ljava/lang/String;)V
throw v0
.end method

View file

@ -0,0 +1,701 @@
.class public final Lx/a/a2/k;
.super Ljava/lang/Object;
.source "FastServiceLoader.kt"
# static fields
.field public static final a:Z
.field public static final b:Lx/a/a2/k;
# direct methods
.method public static constructor <clinit>()V
.locals 2
new-instance v0, Lx/a/a2/k;
invoke-direct {v0}, Lx/a/a2/k;-><init>()V
sput-object v0, Lx/a/a2/k;->b:Lx/a/a2/k;
const-string v0, "kotlinx.coroutines.fast.service.loader"
const/4 v1, 0x1
invoke-static {v0, v1}, Lx/a/a2/w;->a(Ljava/lang/String;Z)Z
move-result v0
sput-boolean v0, Lx/a/a2/k;->a:Z
return-void
.end method
.method public constructor <init>()V
.locals 0
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
# virtual methods
.method public final a(Ljava/lang/String;Ljava/lang/ClassLoader;Ljava/lang/Class;)Ljava/lang/Object;
.locals 1
.annotation system Ldalvik/annotation/Signature;
value = {
"<S:",
"Ljava/lang/Object;",
">(",
"Ljava/lang/String;",
"Ljava/lang/ClassLoader;",
"Ljava/lang/Class<",
"TS;>;)TS;"
}
.end annotation
const/4 v0, 0x0
invoke-static {p1, v0, p2}, Ljava/lang/Class;->forName(Ljava/lang/String;ZLjava/lang/ClassLoader;)Ljava/lang/Class;
move-result-object p1
invoke-virtual {p3, p1}, Ljava/lang/Class;->isAssignableFrom(Ljava/lang/Class;)Z
move-result p2
if-eqz p2, :cond_0
new-array p2, v0, [Ljava/lang/Class;
invoke-virtual {p1, p2}, Ljava/lang/Class;->getDeclaredConstructor([Ljava/lang/Class;)Ljava/lang/reflect/Constructor;
move-result-object p1
new-array p2, v0, [Ljava/lang/Object;
invoke-virtual {p1, p2}, Ljava/lang/reflect/Constructor;->newInstance([Ljava/lang/Object;)Ljava/lang/Object;
move-result-object p1
invoke-virtual {p3, p1}, Ljava/lang/Class;->cast(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object p1
return-object p1
:cond_0
new-instance p2, Ljava/lang/StringBuilder;
invoke-direct {p2}, Ljava/lang/StringBuilder;-><init>()V
const-string v0, "Expected service of class "
invoke-virtual {p2, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p2, p3}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
const-string p3, ", but found "
invoke-virtual {p2, p3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p2, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p1
new-instance p2, Ljava/lang/IllegalArgumentException;
invoke-virtual {p1}, Ljava/lang/Object;->toString()Ljava/lang/String;
move-result-object p1
invoke-direct {p2, p1}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw p2
.end method
.method public final a(Ljava/io/BufferedReader;)Ljava/util/List;
.locals 6
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Ljava/io/BufferedReader;",
")",
"Ljava/util/List<",
"Ljava/lang/String;",
">;"
}
.end annotation
new-instance v0, Ljava/util/LinkedHashSet;
invoke-direct {v0}, Ljava/util/LinkedHashSet;-><init>()V
:cond_0
:goto_0
invoke-virtual {p1}, Ljava/io/BufferedReader;->readLine()Ljava/lang/String;
move-result-object v1
if-eqz v1, :cond_9
if-eqz v1, :cond_8
const/4 v2, 0x6
const/4 v3, 0x0
const-string v4, "#"
invoke-static {v1, v4, v3, v3, v2}, Lw/a0/s;->indexOf$default(Ljava/lang/CharSequence;Ljava/lang/String;IZI)I
move-result v2
const/4 v4, -0x1
if-ne v2, v4, :cond_1
goto :goto_1
:cond_1
invoke-virtual {v1, v3, v2}, Ljava/lang/String;->substring(II)Ljava/lang/String;
move-result-object v1
const-string v2, "(this as java.lang.Strin\u2026ing(startIndex, endIndex)"
invoke-static {v1, v2}, Lw/u/b/j;->checkExpressionValueIsNotNull(Ljava/lang/Object;Ljava/lang/String;)V
:goto_1
invoke-static {v1}, Lw/a0/s;->trim(Ljava/lang/CharSequence;)Ljava/lang/CharSequence;
move-result-object v1
invoke-virtual {v1}, Ljava/lang/Object;->toString()Ljava/lang/String;
move-result-object v1
const/4 v2, 0x0
:goto_2
invoke-interface {v1}, Ljava/lang/CharSequence;->length()I
move-result v4
if-ge v2, v4, :cond_5
invoke-interface {v1, v2}, Ljava/lang/CharSequence;->charAt(I)C
move-result v4
const/16 v5, 0x2e
if-eq v4, v5, :cond_3
invoke-static {v4}, Ljava/lang/Character;->isJavaIdentifierPart(C)Z
move-result v4
if-eqz v4, :cond_2
goto :goto_3
:cond_2
const/4 v4, 0x0
goto :goto_4
:cond_3
:goto_3
const/4 v4, 0x1
:goto_4
if-nez v4, :cond_4
const/4 v2, 0x0
goto :goto_5
:cond_4
add-int/lit8 v2, v2, 0x1
goto :goto_2
:cond_5
const/4 v2, 0x1
:goto_5
if-eqz v2, :cond_7
invoke-interface {v1}, Ljava/lang/CharSequence;->length()I
move-result v2
if-lez v2, :cond_6
const/4 v3, 0x1
:cond_6
if-eqz v3, :cond_0
invoke-interface {v0, v1}, Ljava/util/Set;->add(Ljava/lang/Object;)Z
goto :goto_0
:cond_7
const-string p1, "Illegal service provider class name: "
invoke-static {p1, v1}, Le/e/b/a/a;->a(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
move-result-object p1
new-instance v0, Ljava/lang/IllegalArgumentException;
invoke-virtual {p1}, Ljava/lang/Object;->toString()Ljava/lang/String;
move-result-object p1
invoke-direct {v0, p1}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw v0
:cond_8
const-string p1, "missingDelimiterValue"
invoke-static {p1}, Lw/u/b/j;->a(Ljava/lang/String;)V
const/4 p1, 0x0
throw p1
:cond_9
invoke-static {v0}, Lw/q/l;->toList(Ljava/lang/Iterable;)Ljava/util/List;
move-result-object p1
return-object p1
.end method
.method public final a(Ljava/lang/Class;Ljava/lang/ClassLoader;)Ljava/util/List;
.locals 2
.annotation system Ldalvik/annotation/Signature;
value = {
"<S:",
"Ljava/lang/Object;",
">(",
"Ljava/lang/Class<",
"TS;>;",
"Ljava/lang/ClassLoader;",
")",
"Ljava/util/List<",
"TS;>;"
}
.end annotation
const/4 v0, 0x0
if-eqz p1, :cond_2
if-eqz p2, :cond_1
sget-boolean v0, Lx/a/a2/k;->a:Z
const-string v1, "ServiceLoader.load(service, loader)"
if-nez v0, :cond_0
invoke-static {p1, p2}, Ljava/util/ServiceLoader;->load(Ljava/lang/Class;Ljava/lang/ClassLoader;)Ljava/util/ServiceLoader;
move-result-object p1
invoke-static {p1, v1}, Lw/u/b/j;->checkExpressionValueIsNotNull(Ljava/lang/Object;Ljava/lang/String;)V
invoke-static {p1}, Lw/q/l;->toList(Ljava/lang/Iterable;)Ljava/util/List;
move-result-object p1
return-object p1
:cond_0
:try_start_0
invoke-virtual {p0, p1, p2}, Lx/a/a2/k;->b(Ljava/lang/Class;Ljava/lang/ClassLoader;)Ljava/util/List;
move-result-object p1
:try_end_0
.catchall {:try_start_0 .. :try_end_0} :catchall_0
goto :goto_0
:catchall_0
invoke-static {p1, p2}, Ljava/util/ServiceLoader;->load(Ljava/lang/Class;Ljava/lang/ClassLoader;)Ljava/util/ServiceLoader;
move-result-object p1
invoke-static {p1, v1}, Lw/u/b/j;->checkExpressionValueIsNotNull(Ljava/lang/Object;Ljava/lang/String;)V
invoke-static {p1}, Lw/q/l;->toList(Ljava/lang/Iterable;)Ljava/util/List;
move-result-object p1
:goto_0
return-object p1
:cond_1
const-string p1, "loader"
invoke-static {p1}, Lw/u/b/j;->a(Ljava/lang/String;)V
throw v0
:cond_2
const-string p1, "service"
invoke-static {p1}, Lw/u/b/j;->a(Ljava/lang/String;)V
throw v0
.end method
.method public final a(Ljava/net/URL;)Ljava/util/List;
.locals 5
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Ljava/net/URL;",
")",
"Ljava/util/List<",
"Ljava/lang/String;",
">;"
}
.end annotation
invoke-virtual {p1}, Ljava/net/URL;->toString()Ljava/lang/String;
move-result-object v0
const-string v1, "url.toString()"
invoke-static {v0, v1}, Lw/u/b/j;->checkExpressionValueIsNotNull(Ljava/lang/Object;Ljava/lang/String;)V
const/4 v1, 0x0
const/4 v2, 0x2
const-string v3, "jar"
invoke-static {v0, v3, v1, v2}, Lw/a0/n;->startsWith$default(Ljava/lang/String;Ljava/lang/String;ZI)Z
move-result v3
const/4 v4, 0x0
if-eqz v3, :cond_0
const-string p1, "jar:file:"
invoke-static {v0, p1, v4, v2}, Lw/a0/s;->substringAfter$default(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;I)Ljava/lang/String;
move-result-object p1
const/16 v3, 0x21
invoke-static {p1, v3, p1}, Lw/a0/s;->substringBefore(Ljava/lang/String;CLjava/lang/String;)Ljava/lang/String;
move-result-object p1
const-string v3, "!/"
invoke-static {v0, v3, v4, v2}, Lw/a0/s;->substringAfter$default(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;I)Ljava/lang/String;
move-result-object v0
new-instance v2, Ljava/util/jar/JarFile;
invoke-direct {v2, p1, v1}, Ljava/util/jar/JarFile;-><init>(Ljava/lang/String;Z)V
:try_start_0
new-instance p1, Ljava/io/BufferedReader;
new-instance v1, Ljava/io/InputStreamReader;
new-instance v3, Ljava/util/zip/ZipEntry;
invoke-direct {v3, v0}, Ljava/util/zip/ZipEntry;-><init>(Ljava/lang/String;)V
invoke-virtual {v2, v3}, Ljava/util/jar/JarFile;->getInputStream(Ljava/util/zip/ZipEntry;)Ljava/io/InputStream;
move-result-object v0
const-string v3, "UTF-8"
invoke-direct {v1, v0, v3}, Ljava/io/InputStreamReader;-><init>(Ljava/io/InputStream;Ljava/lang/String;)V
invoke-direct {p1, v1}, Ljava/io/BufferedReader;-><init>(Ljava/io/Reader;)V
:try_end_0
.catchall {:try_start_0 .. :try_end_0} :catchall_2
:try_start_1
sget-object v0, Lx/a/a2/k;->b:Lx/a/a2/k;
invoke-virtual {v0, p1}, Lx/a/a2/k;->a(Ljava/io/BufferedReader;)Ljava/util/List;
move-result-object v0
:try_end_1
.catchall {:try_start_1 .. :try_end_1} :catchall_0
:try_start_2
invoke-static {p1, v4}, Le/k/a/c/e/p/g;->closeFinally(Ljava/io/Closeable;Ljava/lang/Throwable;)V
:try_end_2
.catchall {:try_start_2 .. :try_end_2} :catchall_2
invoke-static {v2, v4}, Le/k/a/c/e/p/g;->closeFinally(Ljava/io/Closeable;Ljava/lang/Throwable;)V
return-object v0
:catchall_0
move-exception v0
:try_start_3
throw v0
:try_end_3
.catchall {:try_start_3 .. :try_end_3} :catchall_1
:catchall_1
move-exception v1
:try_start_4
invoke-static {p1, v0}, Le/k/a/c/e/p/g;->closeFinally(Ljava/io/Closeable;Ljava/lang/Throwable;)V
throw v1
:try_end_4
.catchall {:try_start_4 .. :try_end_4} :catchall_2
:catchall_2
move-exception p1
:try_start_5
throw p1
:try_end_5
.catchall {:try_start_5 .. :try_end_5} :catchall_3
:catchall_3
move-exception v0
invoke-static {v2, p1}, Le/k/a/c/e/p/g;->closeFinally(Ljava/io/Closeable;Ljava/lang/Throwable;)V
throw v0
:cond_0
new-instance v0, Ljava/io/BufferedReader;
new-instance v1, Ljava/io/InputStreamReader;
invoke-virtual {p1}, Ljava/net/URL;->openStream()Ljava/io/InputStream;
move-result-object p1
invoke-direct {v1, p1}, Ljava/io/InputStreamReader;-><init>(Ljava/io/InputStream;)V
invoke-direct {v0, v1}, Ljava/io/BufferedReader;-><init>(Ljava/io/Reader;)V
:try_start_6
sget-object p1, Lx/a/a2/k;->b:Lx/a/a2/k;
invoke-virtual {p1, v0}, Lx/a/a2/k;->a(Ljava/io/BufferedReader;)Ljava/util/List;
move-result-object p1
:try_end_6
.catchall {:try_start_6 .. :try_end_6} :catchall_4
invoke-static {v0, v4}, Le/k/a/c/e/p/g;->closeFinally(Ljava/io/Closeable;Ljava/lang/Throwable;)V
return-object p1
:catchall_4
move-exception p1
:try_start_7
throw p1
:try_end_7
.catchall {:try_start_7 .. :try_end_7} :catchall_5
:catchall_5
move-exception v1
invoke-static {v0, p1}, Le/k/a/c/e/p/g;->closeFinally(Ljava/io/Closeable;Ljava/lang/Throwable;)V
throw v1
.end method
.method public final b(Ljava/lang/Class;Ljava/lang/ClassLoader;)Ljava/util/List;
.locals 5
.annotation system Ldalvik/annotation/Signature;
value = {
"<S:",
"Ljava/lang/Object;",
">(",
"Ljava/lang/Class<",
"TS;>;",
"Ljava/lang/ClassLoader;",
")",
"Ljava/util/List<",
"TS;>;"
}
.end annotation
const/4 v0, 0x0
if-eqz p1, :cond_4
if-eqz p2, :cond_3
const-string v0, "META-INF/services/"
invoke-static {v0}, Le/e/b/a/a;->a(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v0
invoke-virtual {p1}, Ljava/lang/Class;->getName()Ljava/lang/String;
move-result-object v1
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
invoke-virtual {p2, v0}, Ljava/lang/ClassLoader;->getResources(Ljava/lang/String;)Ljava/util/Enumeration;
move-result-object v0
const-string v1, "urls"
invoke-static {v0, v1}, Lw/u/b/j;->checkExpressionValueIsNotNull(Ljava/lang/Object;Ljava/lang/String;)V
invoke-static {v0}, Ljava/util/Collections;->list(Ljava/util/Enumeration;)Ljava/util/ArrayList;
move-result-object v0
const-string v1, "java.util.Collections.list(this)"
invoke-static {v0, v1}, Lw/u/b/j;->checkExpressionValueIsNotNull(Ljava/lang/Object;Ljava/lang/String;)V
new-instance v1, Ljava/util/ArrayList;
invoke-direct {v1}, Ljava/util/ArrayList;-><init>()V
invoke-interface {v0}, Ljava/lang/Iterable;->iterator()Ljava/util/Iterator;
move-result-object v0
:goto_0
invoke-interface {v0}, Ljava/util/Iterator;->hasNext()Z
move-result v2
if-eqz v2, :cond_0
invoke-interface {v0}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v2
check-cast v2, Ljava/net/URL;
sget-object v3, Lx/a/a2/k;->b:Lx/a/a2/k;
const-string v4, "it"
invoke-static {v2, v4}, Lw/u/b/j;->checkExpressionValueIsNotNull(Ljava/lang/Object;Ljava/lang/String;)V
invoke-virtual {v3, v2}, Lx/a/a2/k;->a(Ljava/net/URL;)Ljava/util/List;
move-result-object v2
invoke-static {v1, v2}, Le/k/a/c/e/p/g;->addAll(Ljava/util/Collection;Ljava/lang/Iterable;)Z
goto :goto_0
:cond_0
invoke-static {v1}, Lw/q/l;->toSet(Ljava/lang/Iterable;)Ljava/util/Set;
move-result-object v0
invoke-interface {v0}, Ljava/util/Collection;->isEmpty()Z
move-result v1
xor-int/lit8 v1, v1, 0x1
if-eqz v1, :cond_2
new-instance v1, Ljava/util/ArrayList;
const/16 v2, 0xa
invoke-static {v0, v2}, Le/k/a/c/e/p/g;->collectionSizeOrDefault(Ljava/lang/Iterable;I)I
move-result v2
invoke-direct {v1, v2}, Ljava/util/ArrayList;-><init>(I)V
invoke-interface {v0}, Ljava/lang/Iterable;->iterator()Ljava/util/Iterator;
move-result-object v0
:goto_1
invoke-interface {v0}, Ljava/util/Iterator;->hasNext()Z
move-result v2
if-eqz v2, :cond_1
invoke-interface {v0}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v2
check-cast v2, Ljava/lang/String;
sget-object v3, Lx/a/a2/k;->b:Lx/a/a2/k;
invoke-virtual {v3, v2, p2, p1}, Lx/a/a2/k;->a(Ljava/lang/String;Ljava/lang/ClassLoader;Ljava/lang/Class;)Ljava/lang/Object;
move-result-object v2
invoke-interface {v1, v2}, Ljava/util/Collection;->add(Ljava/lang/Object;)Z
goto :goto_1
:cond_1
return-object v1
:cond_2
new-instance p1, Ljava/lang/IllegalArgumentException;
const-string p2, "No providers were loaded with FastServiceLoader"
invoke-virtual {p2}, Ljava/lang/Object;->toString()Ljava/lang/String;
move-result-object p2
invoke-direct {p1, p2}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw p1
:cond_3
const-string p1, "loader"
invoke-static {p1}, Lw/u/b/j;->a(Ljava/lang/String;)V
throw v0
:cond_4
const-string p1, "service"
invoke-static {p1}, Lw/u/b/j;->a(Ljava/lang/String;)V
throw v0
.end method

View file

@ -0,0 +1,13 @@
.class public Lx/a/a2/l;
.super Lx/a/a2/n;
.source "LockFreeLinkedList.kt"
# direct methods
.method public constructor <init>()V
.locals 0
invoke-direct {p0}, Lx/a/a2/n;-><init>()V
return-void
.end method

View file

@ -0,0 +1,66 @@
.class public final Lx/a/a2/m;
.super Ljava/lang/Object;
.source "LockFreeLinkedList.kt"
# static fields
.field public static final a:Ljava/lang/Object;
# direct methods
.method public static constructor <clinit>()V
.locals 2
new-instance v0, Lx/a/a2/v;
const-string v1, "CONDITION_FALSE"
invoke-direct {v0, v1}, Lx/a/a2/v;-><init>(Ljava/lang/String;)V
sput-object v0, Lx/a/a2/m;->a:Ljava/lang/Object;
return-void
.end method
.method public static final a(Ljava/lang/Object;)Lx/a/a2/n;
.locals 2
const/4 v0, 0x0
if-eqz p0, :cond_2
instance-of v1, p0, Lx/a/a2/t;
if-nez v1, :cond_0
goto :goto_0
:cond_0
move-object v0, p0
:goto_0
check-cast v0, Lx/a/a2/t;
if-eqz v0, :cond_1
iget-object v0, v0, Lx/a/a2/t;->a:Lx/a/a2/n;
if-eqz v0, :cond_1
goto :goto_1
:cond_1
move-object v0, p0
check-cast v0, Lx/a/a2/n;
:goto_1
return-object v0
:cond_2
const-string p0, "$this$unwrap"
invoke-static {p0}, Lw/u/b/j;->a(Ljava/lang/String;)V
throw v0
.end method

View file

@ -0,0 +1,51 @@
.class public abstract Lx/a/a2/n$a;
.super Lx/a/a2/c;
.source "LockFreeLinkedList.kt"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lx/a/a2/n;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x409
name = "a"
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"Lx/a/a2/c<",
"Lx/a/a2/n;",
">;"
}
.end annotation
# instance fields
.field public b:Lx/a/a2/n;
.field public final c:Lx/a/a2/n;
# direct methods
.method public constructor <init>(Lx/a/a2/n;)V
.locals 0
if-eqz p1, :cond_0
invoke-direct {p0}, Lx/a/a2/c;-><init>()V
iput-object p1, p0, Lx/a/a2/n$a;->c:Lx/a/a2/n;
return-void
:cond_0
const-string p1, "newNode"
invoke-static {p1}, Lw/u/b/j;->a(Ljava/lang/String;)V
const/4 p1, 0x0
throw p1
.end method

View file

@ -0,0 +1,552 @@
.class public Lx/a/a2/n;
.super Ljava/lang/Object;
.source "LockFreeLinkedList.kt"
# annotations
.annotation system Ldalvik/annotation/MemberClasses;
value = {
Lx/a/a2/n$a;
}
.end annotation
# static fields
.field public static final d:Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;
.field public static final e:Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;
.field public static final f:Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;
# instance fields
.field public volatile _next:Ljava/lang/Object;
.field public volatile _prev:Ljava/lang/Object;
.field public volatile _removedRef:Ljava/lang/Object;
# direct methods
.method public static constructor <clinit>()V
.locals 3
const-class v0, Ljava/lang/Object;
const-class v1, Lx/a/a2/n;
const-string v2, "_next"
invoke-static {v1, v0, v2}, Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;->newUpdater(Ljava/lang/Class;Ljava/lang/Class;Ljava/lang/String;)Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;
move-result-object v2
sput-object v2, Lx/a/a2/n;->d:Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;
const-string v2, "_prev"
invoke-static {v1, v0, v2}, Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;->newUpdater(Ljava/lang/Class;Ljava/lang/Class;Ljava/lang/String;)Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;
move-result-object v2
sput-object v2, Lx/a/a2/n;->e:Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;
const-string v2, "_removedRef"
invoke-static {v1, v0, v2}, Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;->newUpdater(Ljava/lang/Class;Ljava/lang/Class;Ljava/lang/String;)Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;
move-result-object v0
sput-object v0, Lx/a/a2/n;->f:Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;
return-void
.end method
.method public constructor <init>()V
.locals 1
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
iput-object p0, p0, Lx/a/a2/n;->_next:Ljava/lang/Object;
iput-object p0, p0, Lx/a/a2/n;->_prev:Ljava/lang/Object;
const/4 v0, 0x0
iput-object v0, p0, Lx/a/a2/n;->_removedRef:Ljava/lang/Object;
return-void
.end method
# virtual methods
.method public final a(Lx/a/a2/n;Lx/a/a2/s;)Lx/a/a2/n;
.locals 6
const/4 v0, 0x0
:goto_0
move-object v1, v0
:cond_0
:goto_1
iget-object v2, p1, Lx/a/a2/n;->_next:Ljava/lang/Object;
if-ne v2, p2, :cond_1
return-object p1
:cond_1
instance-of v3, v2, Lx/a/a2/s;
if-eqz v3, :cond_2
check-cast v2, Lx/a/a2/s;
invoke-virtual {v2, p1}, Lx/a/a2/s;->a(Ljava/lang/Object;)Ljava/lang/Object;
goto :goto_1
:cond_2
instance-of v3, v2, Lx/a/a2/t;
if-eqz v3, :cond_4
if-eqz v1, :cond_3
invoke-virtual {p1}, Lx/a/a2/n;->e()Lx/a/a2/n;
sget-object v3, Lx/a/a2/n;->d:Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;
check-cast v2, Lx/a/a2/t;
iget-object v2, v2, Lx/a/a2/t;->a:Lx/a/a2/n;
invoke-virtual {v3, v1, p1, v2}, Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;->compareAndSet(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Z
move-object p1, v1
goto :goto_0
:cond_3
iget-object p1, p1, Lx/a/a2/n;->_prev:Ljava/lang/Object;
invoke-static {p1}, Lx/a/a2/m;->a(Ljava/lang/Object;)Lx/a/a2/n;
move-result-object p1
goto :goto_1
:cond_4
iget-object v3, p0, Lx/a/a2/n;->_prev:Ljava/lang/Object;
instance-of v4, v3, Lx/a/a2/t;
if-eqz v4, :cond_5
return-object v0
:cond_5
if-eq v2, p0, :cond_7
if-eqz v2, :cond_6
move-object v1, v2
check-cast v1, Lx/a/a2/n;
move-object v5, v1
move-object v1, p1
move-object p1, v5
goto :goto_1
:cond_6
new-instance p1, Lw/l;
const-string p2, "null cannot be cast to non-null type kotlinx.coroutines.internal.Node /* = kotlinx.coroutines.internal.LockFreeLinkedListNode */"
invoke-direct {p1, p2}, Lw/l;-><init>(Ljava/lang/String;)V
throw p1
:cond_7
if-ne v3, p1, :cond_8
return-object v0
:cond_8
sget-object v2, Lx/a/a2/n;->e:Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;
invoke-virtual {v2, p0, v3, p1}, Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;->compareAndSet(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Z
move-result v2
if-eqz v2, :cond_0
iget-object v2, p1, Lx/a/a2/n;->_prev:Ljava/lang/Object;
instance-of v2, v2, Lx/a/a2/t;
if-nez v2, :cond_0
return-object v0
.end method
.method public final a(Lx/a/a2/n;)Z
.locals 1
if-eqz p1, :cond_2
sget-object v0, Lx/a/a2/n;->e:Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;
invoke-virtual {v0, p1, p0}, Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;->lazySet(Ljava/lang/Object;Ljava/lang/Object;)V
sget-object v0, Lx/a/a2/n;->d:Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;
invoke-virtual {v0, p1, p0}, Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;->lazySet(Ljava/lang/Object;Ljava/lang/Object;)V
:cond_0
invoke-virtual {p0}, Lx/a/a2/n;->b()Ljava/lang/Object;
move-result-object v0
if-eq v0, p0, :cond_1
const/4 p1, 0x0
return p1
:cond_1
sget-object v0, Lx/a/a2/n;->d:Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;
invoke-virtual {v0, p0, p0, p1}, Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;->compareAndSet(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Z
move-result v0
if-eqz v0, :cond_0
invoke-virtual {p1, p0}, Lx/a/a2/n;->b(Lx/a/a2/n;)V
const/4 p1, 0x1
return p1
:cond_2
const-string p1, "node"
invoke-static {p1}, Lw/u/b/j;->a(Ljava/lang/String;)V
const/4 p1, 0x0
throw p1
.end method
.method public final b()Ljava/lang/Object;
.locals 2
:goto_0
iget-object v0, p0, Lx/a/a2/n;->_next:Ljava/lang/Object;
instance-of v1, v0, Lx/a/a2/s;
if-nez v1, :cond_0
return-object v0
:cond_0
check-cast v0, Lx/a/a2/s;
invoke-virtual {v0, p0}, Lx/a/a2/s;->a(Ljava/lang/Object;)Ljava/lang/Object;
goto :goto_0
.end method
.method public final b(Lx/a/a2/n;)V
.locals 2
:cond_0
iget-object v0, p1, Lx/a/a2/n;->_prev:Ljava/lang/Object;
instance-of v1, v0, Lx/a/a2/t;
if-nez v1, :cond_3
invoke-virtual {p0}, Lx/a/a2/n;->b()Ljava/lang/Object;
move-result-object v1
if-eq v1, p1, :cond_1
goto :goto_0
:cond_1
sget-object v1, Lx/a/a2/n;->e:Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;
invoke-virtual {v1, p1, v0, p0}, Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;->compareAndSet(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Z
move-result v1
if-eqz v1, :cond_0
invoke-virtual {p0}, Lx/a/a2/n;->b()Ljava/lang/Object;
move-result-object v1
instance-of v1, v1, Lx/a/a2/t;
if-eqz v1, :cond_3
if-eqz v0, :cond_2
check-cast v0, Lx/a/a2/n;
const/4 v1, 0x0
invoke-virtual {p1, v0, v1}, Lx/a/a2/n;->a(Lx/a/a2/n;Lx/a/a2/s;)Lx/a/a2/n;
goto :goto_0
:cond_2
new-instance p1, Lw/l;
const-string v0, "null cannot be cast to non-null type kotlinx.coroutines.internal.Node /* = kotlinx.coroutines.internal.LockFreeLinkedListNode */"
invoke-direct {p1, v0}, Lw/l;-><init>(Ljava/lang/String;)V
throw p1
:cond_3
:goto_0
return-void
.end method
.method public final c()Lx/a/a2/n;
.locals 1
invoke-virtual {p0}, Lx/a/a2/n;->b()Ljava/lang/Object;
move-result-object v0
invoke-static {v0}, Lx/a/a2/m;->a(Ljava/lang/Object;)Lx/a/a2/n;
move-result-object v0
return-object v0
.end method
.method public final d()Ljava/lang/Object;
.locals 3
:goto_0
iget-object v0, p0, Lx/a/a2/n;->_prev:Ljava/lang/Object;
instance-of v1, v0, Lx/a/a2/t;
if-eqz v1, :cond_0
return-object v0
:cond_0
if-eqz v0, :cond_2
move-object v1, v0
check-cast v1, Lx/a/a2/n;
invoke-virtual {v1}, Lx/a/a2/n;->b()Ljava/lang/Object;
move-result-object v2
if-ne v2, p0, :cond_1
return-object v0
:cond_1
const/4 v0, 0x0
invoke-virtual {p0, v1, v0}, Lx/a/a2/n;->a(Lx/a/a2/n;Lx/a/a2/s;)Lx/a/a2/n;
goto :goto_0
:cond_2
new-instance v0, Lw/l;
const-string v1, "null cannot be cast to non-null type kotlinx.coroutines.internal.Node /* = kotlinx.coroutines.internal.LockFreeLinkedListNode */"
invoke-direct {v0, v1}, Lw/l;-><init>(Ljava/lang/String;)V
throw v0
.end method
.method public final e()Lx/a/a2/n;
.locals 4
:cond_0
iget-object v0, p0, Lx/a/a2/n;->_prev:Ljava/lang/Object;
instance-of v1, v0, Lx/a/a2/t;
if-eqz v1, :cond_1
check-cast v0, Lx/a/a2/t;
iget-object v0, v0, Lx/a/a2/t;->a:Lx/a/a2/n;
return-object v0
:cond_1
if-ne v0, p0, :cond_5
move-object v1, p0
:goto_0
instance-of v2, v1, Lx/a/a2/l;
if-eqz v2, :cond_2
goto :goto_2
:cond_2
invoke-virtual {v1}, Lx/a/a2/n;->c()Lx/a/a2/n;
move-result-object v1
if-eq v1, p0, :cond_3
const/4 v2, 0x1
goto :goto_1
:cond_3
const/4 v2, 0x0
:goto_1
if-eqz v2, :cond_4
goto :goto_0
:cond_4
new-instance v0, Ljava/lang/IllegalStateException;
const-string v1, "Cannot loop to this while looking for list head"
invoke-virtual {v1}, Ljava/lang/Object;->toString()Ljava/lang/String;
move-result-object v1
invoke-direct {v0, v1}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
throw v0
:cond_5
if-eqz v0, :cond_7
move-object v1, v0
check-cast v1, Lx/a/a2/n;
:goto_2
iget-object v2, v1, Lx/a/a2/n;->_removedRef:Ljava/lang/Object;
check-cast v2, Lx/a/a2/t;
if-eqz v2, :cond_6
goto :goto_3
:cond_6
new-instance v2, Lx/a/a2/t;
invoke-direct {v2, v1}, Lx/a/a2/t;-><init>(Lx/a/a2/n;)V
sget-object v3, Lx/a/a2/n;->f:Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;
invoke-virtual {v3, v1, v2}, Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;->lazySet(Ljava/lang/Object;Ljava/lang/Object;)V
:goto_3
sget-object v1, Lx/a/a2/n;->e:Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;
invoke-virtual {v1, p0, v0, v2}, Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;->compareAndSet(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Z
move-result v1
if-eqz v1, :cond_0
check-cast v0, Lx/a/a2/n;
return-object v0
:cond_7
new-instance v0, Lw/l;
const-string v1, "null cannot be cast to non-null type kotlinx.coroutines.internal.Node /* = kotlinx.coroutines.internal.LockFreeLinkedListNode */"
invoke-direct {v0, v1}, Lw/l;-><init>(Ljava/lang/String;)V
throw v0
.end method
.method public final f()Lx/a/a2/t;
.locals 2
iget-object v0, p0, Lx/a/a2/n;->_removedRef:Ljava/lang/Object;
check-cast v0, Lx/a/a2/t;
if-eqz v0, :cond_0
goto :goto_0
:cond_0
new-instance v0, Lx/a/a2/t;
invoke-direct {v0, p0}, Lx/a/a2/t;-><init>(Lx/a/a2/n;)V
sget-object v1, Lx/a/a2/n;->f:Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;
invoke-virtual {v1, p0, v0}, Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;->lazySet(Ljava/lang/Object;Ljava/lang/Object;)V
:goto_0
return-object v0
.end method
.method public toString()Ljava/lang/String;
.locals 2
new-instance v0, Ljava/lang/StringBuilder;
invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
invoke-virtual {p0}, Ljava/lang/Object;->getClass()Ljava/lang/Class;
move-result-object v1
invoke-virtual {v1}, Ljava/lang/Class;->getSimpleName()Ljava/lang/String;
move-result-object v1
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const/16 v1, 0x40
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
invoke-static {p0}, Ljava/lang/System;->identityHashCode(Ljava/lang/Object;)I
move-result v1
invoke-static {v1}, Ljava/lang/Integer;->toHexString(I)Ljava/lang/String;
move-result-object v1
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

View file

@ -0,0 +1,285 @@
.class public Lx/a/a2/o;
.super Ljava/lang/Object;
.source "LockFreeTaskQueue.kt"
# annotations
.annotation system Ldalvik/annotation/Signature;
value = {
"<E:",
"Ljava/lang/Object;",
">",
"Ljava/lang/Object;"
}
.end annotation
# static fields
.field public static final synthetic a:Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;
# instance fields
.field public volatile synthetic _cur$internal:Ljava/lang/Object;
# direct methods
.method public static constructor <clinit>()V
.locals 3
const-class v0, Lx/a/a2/o;
const-class v1, Ljava/lang/Object;
const-string v2, "_cur$internal"
invoke-static {v0, v1, v2}, Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;->newUpdater(Ljava/lang/Class;Ljava/lang/Class;Ljava/lang/String;)Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;
move-result-object v0
sput-object v0, Lx/a/a2/o;->a:Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;
return-void
.end method
.method public constructor <init>(Z)V
.locals 2
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
new-instance v0, Lx/a/a2/p;
const/16 v1, 0x8
invoke-direct {v0, v1, p1}, Lx/a/a2/p;-><init>(IZ)V
iput-object v0, p0, Lx/a/a2/o;->_cur$internal:Ljava/lang/Object;
return-void
.end method
# virtual methods
.method public final a()Ljava/lang/Object;
.locals 11
.annotation system Ldalvik/annotation/Signature;
value = {
"()TE;"
}
.end annotation
:goto_0
iget-object v0, p0, Lx/a/a2/o;->_cur$internal:Ljava/lang/Object;
check-cast v0, Lx/a/a2/p;
:cond_0
:goto_1
iget-wide v3, v0, Lx/a/a2/p;->_state$internal:J
const-wide/high16 v1, 0x1000000000000000L
and-long/2addr v1, v3
const-wide/16 v5, 0x0
const/4 v7, 0x0
cmp-long v8, v1, v5
if-eqz v8, :cond_1
sget-object v7, Lx/a/a2/p;->g:Lx/a/a2/v;
goto :goto_4
:cond_1
sget-object v1, Lx/a/a2/p;->h:Lx/a/a2/p$a;
const-wide/32 v1, 0x3fffffff
and-long/2addr v1, v3
const/4 v5, 0x0
shr-long/2addr v1, v5
long-to-int v8, v1
const-wide v1, 0xfffffffc0000000L
and-long/2addr v1, v3
const/16 v5, 0x1e
shr-long/2addr v1, v5
long-to-int v2, v1
iget v1, v0, Lx/a/a2/p;->a:I
and-int/2addr v2, v1
and-int v5, v8, v1
if-ne v2, v5, :cond_2
goto :goto_4
:cond_2
iget-object v2, v0, Lx/a/a2/p;->b:Ljava/util/concurrent/atomic/AtomicReferenceArray;
and-int/2addr v1, v8
invoke-virtual {v2, v1}, Ljava/util/concurrent/atomic/AtomicReferenceArray;->get(I)Ljava/lang/Object;
move-result-object v9
if-nez v9, :cond_3
iget-boolean v1, v0, Lx/a/a2/p;->d:Z
if-eqz v1, :cond_0
goto :goto_4
:cond_3
instance-of v1, v9, Lx/a/a2/p$b;
if-eqz v1, :cond_4
goto :goto_4
:cond_4
add-int/lit8 v1, v8, 0x1
const v2, 0x3fffffff # 1.9999999f
and-int v10, v1, v2
sget-object v1, Lx/a/a2/p;->f:Ljava/util/concurrent/atomic/AtomicLongFieldUpdater;
sget-object v2, Lx/a/a2/p;->h:Lx/a/a2/p$a;
invoke-virtual {v2, v3, v4, v10}, Lx/a/a2/p$a;->a(JI)J
move-result-wide v5
move-object v2, v0
invoke-virtual/range {v1 .. v6}, Ljava/util/concurrent/atomic/AtomicLongFieldUpdater;->compareAndSet(Ljava/lang/Object;JJ)Z
move-result v1
if-eqz v1, :cond_5
iget-object v1, v0, Lx/a/a2/p;->b:Ljava/util/concurrent/atomic/AtomicReferenceArray;
iget v2, v0, Lx/a/a2/p;->a:I
and-int/2addr v2, v8
invoke-virtual {v1, v2, v7}, Ljava/util/concurrent/atomic/AtomicReferenceArray;->set(ILjava/lang/Object;)V
goto :goto_3
:cond_5
iget-boolean v1, v0, Lx/a/a2/p;->d:Z
if-nez v1, :cond_6
goto :goto_1
:cond_6
move-object v1, v0
:goto_2
invoke-static {v1, v8, v10}, Lx/a/a2/p;->a(Lx/a/a2/p;II)Lx/a/a2/p;
move-result-object v1
if-eqz v1, :cond_7
goto :goto_2
:cond_7
:goto_3
move-object v7, v9
:goto_4
sget-object v1, Lx/a/a2/p;->g:Lx/a/a2/v;
if-eq v7, v1, :cond_8
return-object v7
:cond_8
sget-object v1, Lx/a/a2/o;->a:Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;
invoke-virtual {v0}, Lx/a/a2/p;->c()Lx/a/a2/p;
move-result-object v2
invoke-virtual {v1, p0, v0, v2}, Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;->compareAndSet(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Z
goto :goto_0
.end method
.method public final a(Ljava/lang/Object;)Z
.locals 3
.annotation system Ldalvik/annotation/Signature;
value = {
"(TE;)Z"
}
.end annotation
if-eqz p1, :cond_3
:goto_0
iget-object v0, p0, Lx/a/a2/o;->_cur$internal:Ljava/lang/Object;
check-cast v0, Lx/a/a2/p;
invoke-virtual {v0, p1}, Lx/a/a2/p;->a(Ljava/lang/Object;)I
move-result v1
const/4 v2, 0x1
if-eqz v1, :cond_2
if-eq v1, v2, :cond_1
const/4 v0, 0x2
if-eq v1, v0, :cond_0
goto :goto_0
:cond_0
const/4 p1, 0x0
return p1
:cond_1
sget-object v1, Lx/a/a2/o;->a:Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;
invoke-virtual {v0}, Lx/a/a2/p;->c()Lx/a/a2/p;
move-result-object v2
invoke-virtual {v1, p0, v0, v2}, Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;->compareAndSet(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Z
goto :goto_0
:cond_2
return v2
:cond_3
const-string p1, "element"
invoke-static {p1}, Lw/u/b/j;->a(Ljava/lang/String;)V
const/4 p1, 0x0
throw p1
.end method

View file

@ -0,0 +1,96 @@
.class public final Lx/a/a2/p$a;
.super Ljava/lang/Object;
.source "LockFreeTaskQueue.kt"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lx/a/a2/p;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x19
name = "a"
.end annotation
# direct methods
.method public synthetic constructor <init>(Lkotlin/jvm/internal/DefaultConstructorMarker;)V
.locals 0
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
# virtual methods
.method public final a(J)I
.locals 3
const-wide/high16 v0, 0x2000000000000000L
and-long/2addr p1, v0
const-wide/16 v0, 0x0
cmp-long v2, p1, v0
if-eqz v2, :cond_0
const/4 p1, 0x2
goto :goto_0
:cond_0
const/4 p1, 0x1
:goto_0
return p1
.end method
.method public final a(JI)J
.locals 2
const-wide/32 v0, -0x40000000
and-long/2addr p1, v0
int-to-long v0, p3
const/4 p3, 0x0
shl-long/2addr v0, p3
or-long/2addr p1, v0
return-wide p1
.end method
.method public final a(JJ)J
.locals 0
not-long p3, p3
and-long/2addr p1, p3
return-wide p1
.end method
.method public final b(JI)J
.locals 2
const-wide v0, -0xfffffffc0000001L # -3.1050369248997324E231
and-long/2addr p1, v0
int-to-long v0, p3
const/16 p3, 0x1e
shl-long/2addr v0, p3
or-long/2addr p1, v0
return-wide p1
.end method

View file

@ -1,24 +1,30 @@
.class public final Lx/c0/f/q$a;
.class public final Lx/a/a2/p$b;
.super Ljava/lang/Object;
.source "Settings.kt"
.source "LockFreeTaskQueue.kt"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lx/c0/f/q;
value = Lx/a/a2/p;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x19
name = "a"
name = "b"
.end annotation
# instance fields
.field public final a:I
# direct methods
.method public synthetic constructor <init>(Lkotlin/jvm/internal/DefaultConstructorMarker;)V
.method public constructor <init>(I)V
.locals 0
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
iput p1, p0, Lx/a/a2/p$b;->a:I
return-void
.end method

View file

@ -0,0 +1,693 @@
.class public final Lx/a/a2/p;
.super Ljava/lang/Object;
.source "LockFreeTaskQueue.kt"
# annotations
.annotation system Ldalvik/annotation/MemberClasses;
value = {
Lx/a/a2/p$b;,
Lx/a/a2/p$a;
}
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"<E:",
"Ljava/lang/Object;",
">",
"Ljava/lang/Object;"
}
.end annotation
# static fields
.field public static final e:Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;
.field public static final synthetic f:Ljava/util/concurrent/atomic/AtomicLongFieldUpdater;
.field public static final g:Lx/a/a2/v;
.field public static final h:Lx/a/a2/p$a;
# instance fields
.field public volatile _next:Ljava/lang/Object;
.field public volatile synthetic _state$internal:J
.field public final a:I
.field public final b:Ljava/util/concurrent/atomic/AtomicReferenceArray;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/concurrent/atomic/AtomicReferenceArray<",
"Ljava/lang/Object;",
">;"
}
.end annotation
.end field
.field public final c:I
.field public final d:Z
# direct methods
.method public static constructor <clinit>()V
.locals 3
const-class v0, Lx/a/a2/p;
new-instance v1, Lx/a/a2/p$a;
const/4 v2, 0x0
invoke-direct {v1, v2}, Lx/a/a2/p$a;-><init>(Lkotlin/jvm/internal/DefaultConstructorMarker;)V
sput-object v1, Lx/a/a2/p;->h:Lx/a/a2/p$a;
new-instance v1, Lx/a/a2/v;
const-string v2, "REMOVE_FROZEN"
invoke-direct {v1, v2}, Lx/a/a2/v;-><init>(Ljava/lang/String;)V
sput-object v1, Lx/a/a2/p;->g:Lx/a/a2/v;
const-class v1, Ljava/lang/Object;
const-string v2, "_next"
invoke-static {v0, v1, v2}, Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;->newUpdater(Ljava/lang/Class;Ljava/lang/Class;Ljava/lang/String;)Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;
move-result-object v1
sput-object v1, Lx/a/a2/p;->e:Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;
const-string v1, "_state$internal"
invoke-static {v0, v1}, Ljava/util/concurrent/atomic/AtomicLongFieldUpdater;->newUpdater(Ljava/lang/Class;Ljava/lang/String;)Ljava/util/concurrent/atomic/AtomicLongFieldUpdater;
move-result-object v0
sput-object v0, Lx/a/a2/p;->f:Ljava/util/concurrent/atomic/AtomicLongFieldUpdater;
return-void
.end method
.method public constructor <init>(IZ)V
.locals 3
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
iput p1, p0, Lx/a/a2/p;->c:I
iput-boolean p2, p0, Lx/a/a2/p;->d:Z
iget p1, p0, Lx/a/a2/p;->c:I
add-int/lit8 p2, p1, -0x1
iput p2, p0, Lx/a/a2/p;->a:I
const/4 p2, 0x0
iput-object p2, p0, Lx/a/a2/p;->_next:Ljava/lang/Object;
const-wide/16 v0, 0x0
iput-wide v0, p0, Lx/a/a2/p;->_state$internal:J
new-instance p2, Ljava/util/concurrent/atomic/AtomicReferenceArray;
invoke-direct {p2, p1}, Ljava/util/concurrent/atomic/AtomicReferenceArray;-><init>(I)V
iput-object p2, p0, Lx/a/a2/p;->b:Ljava/util/concurrent/atomic/AtomicReferenceArray;
iget p1, p0, Lx/a/a2/p;->a:I
const/4 p2, 0x0
const/4 v0, 0x1
const v1, 0x3fffffff # 1.9999999f
if-gt p1, v1, :cond_0
const/4 p1, 0x1
goto :goto_0
:cond_0
const/4 p1, 0x0
:goto_0
const-string v1, "Check failed."
if-eqz p1, :cond_3
iget p1, p0, Lx/a/a2/p;->c:I
iget v2, p0, Lx/a/a2/p;->a:I
and-int/2addr p1, v2
if-nez p1, :cond_1
const/4 p2, 0x1
:cond_1
if-eqz p2, :cond_2
return-void
:cond_2
new-instance p1, Ljava/lang/IllegalStateException;
invoke-virtual {v1}, Ljava/lang/Object;->toString()Ljava/lang/String;
move-result-object p2
invoke-direct {p1, p2}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
throw p1
:cond_3
new-instance p1, Ljava/lang/IllegalStateException;
invoke-virtual {v1}, Ljava/lang/Object;->toString()Ljava/lang/String;
move-result-object p2
invoke-direct {p1, p2}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
throw p1
.end method
.method public static final synthetic a(Lx/a/a2/p;II)Lx/a/a2/p;
.locals 8
:cond_0
iget-wide v2, p0, Lx/a/a2/p;->_state$internal:J
const-wide/32 v0, 0x3fffffff
and-long/2addr v0, v2
const/4 v4, 0x0
shr-long/2addr v0, v4
long-to-int v6, v0
if-ne v6, p1, :cond_1
const/4 v4, 0x1
:cond_1
if-eqz v4, :cond_3
const-wide/high16 v0, 0x1000000000000000L
and-long/2addr v0, v2
const-wide/16 v4, 0x0
cmp-long v7, v0, v4
if-eqz v7, :cond_2
invoke-virtual {p0}, Lx/a/a2/p;->c()Lx/a/a2/p;
move-result-object p0
goto :goto_0
:cond_2
sget-object v0, Lx/a/a2/p;->f:Ljava/util/concurrent/atomic/AtomicLongFieldUpdater;
sget-object v1, Lx/a/a2/p;->h:Lx/a/a2/p$a;
invoke-virtual {v1, v2, v3, p2}, Lx/a/a2/p$a;->a(JI)J
move-result-wide v4
move-object v1, p0
invoke-virtual/range {v0 .. v5}, Ljava/util/concurrent/atomic/AtomicLongFieldUpdater;->compareAndSet(Ljava/lang/Object;JJ)Z
move-result v0
if-eqz v0, :cond_0
iget-object p1, p0, Lx/a/a2/p;->b:Ljava/util/concurrent/atomic/AtomicReferenceArray;
iget p0, p0, Lx/a/a2/p;->a:I
and-int/2addr p0, v6
const/4 p2, 0x0
invoke-virtual {p1, p0, p2}, Ljava/util/concurrent/atomic/AtomicReferenceArray;->set(ILjava/lang/Object;)V
move-object p0, p2
:goto_0
return-object p0
:cond_3
new-instance p0, Ljava/lang/IllegalStateException;
const-string p1, "This queue can have only one consumer"
invoke-virtual {p1}, Ljava/lang/Object;->toString()Ljava/lang/String;
move-result-object p1
invoke-direct {p0, p1}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
throw p0
.end method
# virtual methods
.method public final a(Ljava/lang/Object;)I
.locals 13
.annotation system Ldalvik/annotation/Signature;
value = {
"(TE;)I"
}
.end annotation
const/4 v0, 0x0
if-eqz p1, :cond_8
:cond_0
iget-wide v3, p0, Lx/a/a2/p;->_state$internal:J
const-wide/high16 v1, 0x3000000000000000L # 1.727233711018889E-77
and-long/2addr v1, v3
const-wide/16 v7, 0x0
cmp-long v5, v1, v7
if-eqz v5, :cond_1
sget-object p1, Lx/a/a2/p;->h:Lx/a/a2/p$a;
invoke-virtual {p1, v3, v4}, Lx/a/a2/p$a;->a(J)I
move-result p1
return p1
:cond_1
const-wide/32 v1, 0x3fffffff
and-long/2addr v1, v3
const/4 v9, 0x0
shr-long/2addr v1, v9
long-to-int v2, v1
const-wide v5, 0xfffffffc0000000L
and-long/2addr v5, v3
const/16 v1, 0x1e
shr-long/2addr v5, v1
long-to-int v10, v5
iget v11, p0, Lx/a/a2/p;->a:I
add-int/lit8 v1, v10, 0x2
and-int/2addr v1, v11
and-int v5, v2, v11
const/4 v6, 0x1
if-ne v1, v5, :cond_2
return v6
:cond_2
iget-boolean v1, p0, Lx/a/a2/p;->d:Z
const v5, 0x3fffffff # 1.9999999f
if-nez v1, :cond_4
iget-object v1, p0, Lx/a/a2/p;->b:Ljava/util/concurrent/atomic/AtomicReferenceArray;
and-int v12, v10, v11
invoke-virtual {v1, v12}, Ljava/util/concurrent/atomic/AtomicReferenceArray;->get(I)Ljava/lang/Object;
move-result-object v1
if-eqz v1, :cond_4
iget v1, p0, Lx/a/a2/p;->c:I
const/16 v3, 0x400
if-lt v1, v3, :cond_3
sub-int/2addr v10, v2
and-int v2, v10, v5
shr-int/lit8 v1, v1, 0x1
if-le v2, v1, :cond_0
:cond_3
return v6
:cond_4
add-int/lit8 v1, v10, 0x1
and-int/2addr v1, v5
sget-object v2, Lx/a/a2/p;->f:Ljava/util/concurrent/atomic/AtomicLongFieldUpdater;
sget-object v5, Lx/a/a2/p;->h:Lx/a/a2/p$a;
invoke-virtual {v5, v3, v4, v1}, Lx/a/a2/p$a;->b(JI)J
move-result-wide v5
move-object v1, v2
move-object v2, p0
invoke-virtual/range {v1 .. v6}, Ljava/util/concurrent/atomic/AtomicLongFieldUpdater;->compareAndSet(Ljava/lang/Object;JJ)Z
move-result v1
if-eqz v1, :cond_0
iget-object v1, p0, Lx/a/a2/p;->b:Ljava/util/concurrent/atomic/AtomicReferenceArray;
and-int v2, v10, v11
invoke-virtual {v1, v2, p1}, Ljava/util/concurrent/atomic/AtomicReferenceArray;->set(ILjava/lang/Object;)V
move-object v1, p0
:goto_0
iget-wide v2, v1, Lx/a/a2/p;->_state$internal:J
const-wide/high16 v4, 0x1000000000000000L
and-long/2addr v2, v4
cmp-long v4, v2, v7
if-nez v4, :cond_5
goto :goto_2
:cond_5
invoke-virtual {v1}, Lx/a/a2/p;->c()Lx/a/a2/p;
move-result-object v1
iget-object v2, v1, Lx/a/a2/p;->b:Ljava/util/concurrent/atomic/AtomicReferenceArray;
iget v3, v1, Lx/a/a2/p;->a:I
and-int/2addr v3, v10
invoke-virtual {v2, v3}, Ljava/util/concurrent/atomic/AtomicReferenceArray;->get(I)Ljava/lang/Object;
move-result-object v2
instance-of v3, v2, Lx/a/a2/p$b;
if-eqz v3, :cond_6
check-cast v2, Lx/a/a2/p$b;
iget v2, v2, Lx/a/a2/p$b;->a:I
if-ne v2, v10, :cond_6
iget-object v2, v1, Lx/a/a2/p;->b:Ljava/util/concurrent/atomic/AtomicReferenceArray;
iget v3, v1, Lx/a/a2/p;->a:I
and-int/2addr v3, v10
invoke-virtual {v2, v3, p1}, Ljava/util/concurrent/atomic/AtomicReferenceArray;->set(ILjava/lang/Object;)V
goto :goto_1
:cond_6
move-object v1, v0
:goto_1
if-eqz v1, :cond_7
goto :goto_0
:cond_7
:goto_2
return v9
:cond_8
const-string p1, "element"
invoke-static {p1}, Lw/u/b/j;->a(Ljava/lang/String;)V
throw v0
.end method
.method public final a()Z
.locals 10
:cond_0
iget-wide v2, p0, Lx/a/a2/p;->_state$internal:J
const-wide/high16 v0, 0x2000000000000000L
and-long v4, v2, v0
const/4 v6, 0x1
const-wide/16 v7, 0x0
cmp-long v9, v4, v7
if-eqz v9, :cond_1
return v6
:cond_1
const-wide/high16 v4, 0x1000000000000000L
and-long/2addr v4, v2
cmp-long v9, v4, v7
if-eqz v9, :cond_2
const/4 v0, 0x0
return v0
:cond_2
or-long v4, v2, v0
sget-object v0, Lx/a/a2/p;->f:Ljava/util/concurrent/atomic/AtomicLongFieldUpdater;
move-object v1, p0
invoke-virtual/range {v0 .. v5}, Ljava/util/concurrent/atomic/AtomicLongFieldUpdater;->compareAndSet(Ljava/lang/Object;JJ)Z
move-result v0
if-eqz v0, :cond_0
return v6
.end method
.method public final b()Z
.locals 7
iget-wide v0, p0, Lx/a/a2/p;->_state$internal:J
const-wide/32 v2, 0x3fffffff
and-long/2addr v2, v0
const/4 v4, 0x0
shr-long/2addr v2, v4
long-to-int v3, v2
const-wide v5, 0xfffffffc0000000L
and-long/2addr v0, v5
const/16 v2, 0x1e
shr-long/2addr v0, v2
long-to-int v1, v0
if-ne v3, v1, :cond_0
const/4 v4, 0x1
:cond_0
return v4
.end method
.method public final c()Lx/a/a2/p;
.locals 13
.annotation system Ldalvik/annotation/Signature;
value = {
"()",
"Lx/a/a2/p<",
"TE;>;"
}
.end annotation
:cond_0
iget-wide v2, p0, Lx/a/a2/p;->_state$internal:J
const-wide/high16 v6, 0x1000000000000000L
and-long v0, v2, v6
const-wide/16 v4, 0x0
cmp-long v8, v0, v4
if-eqz v8, :cond_1
goto :goto_0
:cond_1
or-long v8, v2, v6
sget-object v0, Lx/a/a2/p;->f:Ljava/util/concurrent/atomic/AtomicLongFieldUpdater;
move-object v1, p0
move-wide v4, v8
invoke-virtual/range {v0 .. v5}, Ljava/util/concurrent/atomic/AtomicLongFieldUpdater;->compareAndSet(Ljava/lang/Object;JJ)Z
move-result v0
if-eqz v0, :cond_0
move-wide v2, v8
:goto_0
iget-object v0, p0, Lx/a/a2/p;->_next:Ljava/lang/Object;
check-cast v0, Lx/a/a2/p;
if-eqz v0, :cond_2
return-object v0
:cond_2
sget-object v0, Lx/a/a2/p;->e:Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;
const/4 v1, 0x0
new-instance v4, Lx/a/a2/p;
iget v5, p0, Lx/a/a2/p;->c:I
mul-int/lit8 v5, v5, 0x2
iget-boolean v8, p0, Lx/a/a2/p;->d:Z
invoke-direct {v4, v5, v8}, Lx/a/a2/p;-><init>(IZ)V
const-wide/32 v8, 0x3fffffff
and-long/2addr v8, v2
const/4 v5, 0x0
shr-long/2addr v8, v5
long-to-int v5, v8
const-wide v8, 0xfffffffc0000000L
and-long/2addr v8, v2
const/16 v10, 0x1e
shr-long/2addr v8, v10
long-to-int v9, v8
:goto_1
iget v8, p0, Lx/a/a2/p;->a:I
and-int v10, v5, v8
and-int/2addr v8, v9
if-eq v10, v8, :cond_4
iget-object v8, v4, Lx/a/a2/p;->b:Ljava/util/concurrent/atomic/AtomicReferenceArray;
iget v11, v4, Lx/a/a2/p;->a:I
and-int/2addr v11, v5
iget-object v12, p0, Lx/a/a2/p;->b:Ljava/util/concurrent/atomic/AtomicReferenceArray;
invoke-virtual {v12, v10}, Ljava/util/concurrent/atomic/AtomicReferenceArray;->get(I)Ljava/lang/Object;
move-result-object v10
if-eqz v10, :cond_3
goto :goto_2
:cond_3
new-instance v10, Lx/a/a2/p$b;
invoke-direct {v10, v5}, Lx/a/a2/p$b;-><init>(I)V
:goto_2
invoke-virtual {v8, v11, v10}, Ljava/util/concurrent/atomic/AtomicReferenceArray;->set(ILjava/lang/Object;)V
add-int/lit8 v5, v5, 0x1
goto :goto_1
:cond_4
sget-object v5, Lx/a/a2/p;->h:Lx/a/a2/p$a;
invoke-virtual {v5, v2, v3, v6, v7}, Lx/a/a2/p$a;->a(JJ)J
move-result-wide v8
iput-wide v8, v4, Lx/a/a2/p;->_state$internal:J
invoke-virtual {v0, p0, v1, v4}, Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;->compareAndSet(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Z
goto :goto_0
.end method

View file

@ -0,0 +1,148 @@
.class public final Lx/a/a2/q;
.super Ljava/lang/Object;
.source "MainDispatchers.kt"
# static fields
.field public static final a:Lx/a/k1;
# direct methods
.method public static constructor <clinit>()V
.locals 8
const/4 v0, 0x2
const/4 v1, 0x0
:try_start_0
const-class v2, Lkotlinx/coroutines/internal/MainDispatcherFactory;
sget-object v3, Lx/a/a2/k;->b:Lx/a/a2/k;
invoke-virtual {v2}, Ljava/lang/Class;->getClassLoader()Ljava/lang/ClassLoader;
move-result-object v4
const-string v5, "clz.classLoader"
invoke-static {v4, v5}, Lw/u/b/j;->checkExpressionValueIsNotNull(Ljava/lang/Object;Ljava/lang/String;)V
invoke-virtual {v3, v2, v4}, Lx/a/a2/k;->a(Ljava/lang/Class;Ljava/lang/ClassLoader;)Ljava/util/List;
move-result-object v2
invoke-interface {v2}, Ljava/lang/Iterable;->iterator()Ljava/util/Iterator;
move-result-object v3
invoke-interface {v3}, Ljava/util/Iterator;->hasNext()Z
move-result v4
if-nez v4, :cond_0
move-object v4, v1
goto :goto_1
:cond_0
invoke-interface {v3}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v4
move-object v5, v4
check-cast v5, Lkotlinx/coroutines/internal/MainDispatcherFactory;
invoke-interface {v5}, Lkotlinx/coroutines/internal/MainDispatcherFactory;->getLoadPriority()I
move-result v5
:cond_1
:goto_0
invoke-interface {v3}, Ljava/util/Iterator;->hasNext()Z
move-result v6
if-eqz v6, :cond_2
invoke-interface {v3}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v6
move-object v7, v6
check-cast v7, Lkotlinx/coroutines/internal/MainDispatcherFactory;
invoke-interface {v7}, Lkotlinx/coroutines/internal/MainDispatcherFactory;->getLoadPriority()I
move-result v7
if-ge v5, v7, :cond_1
move-object v4, v6
move v5, v7
goto :goto_0
:cond_2
:goto_1
check-cast v4, Lkotlinx/coroutines/internal/MainDispatcherFactory;
:try_end_0
.catchall {:try_start_0 .. :try_end_0} :catchall_1
if-eqz v4, :cond_3
:try_start_1
invoke-interface {v4, v2}, Lkotlinx/coroutines/internal/MainDispatcherFactory;->createDispatcher(Ljava/util/List;)Lx/a/k1;
move-result-object v2
:try_end_1
.catchall {:try_start_1 .. :try_end_1} :catchall_0
goto :goto_2
:catchall_0
move-exception v2
:try_start_2
new-instance v3, Lx/a/a2/r;
invoke-interface {v4}, Lkotlinx/coroutines/internal/MainDispatcherFactory;->hintOnError()Ljava/lang/String;
move-result-object v4
invoke-direct {v3, v2, v4}, Lx/a/a2/r;-><init>(Ljava/lang/Throwable;Ljava/lang/String;)V
move-object v2, v3
:goto_2
if-eqz v2, :cond_3
goto :goto_3
:cond_3
new-instance v2, Lx/a/a2/r;
invoke-direct {v2, v1, v1, v0}, Lx/a/a2/r;-><init>(Ljava/lang/Throwable;Ljava/lang/String;I)V
:try_end_2
.catchall {:try_start_2 .. :try_end_2} :catchall_1
goto :goto_3
:catchall_1
move-exception v2
new-instance v3, Lx/a/a2/r;
invoke-direct {v3, v2, v1, v0}, Lx/a/a2/r;-><init>(Ljava/lang/Throwable;Ljava/lang/String;I)V
move-object v2, v3
:goto_3
sput-object v2, Lx/a/a2/q;->a:Lx/a/k1;
return-void
.end method

View file

@ -0,0 +1,210 @@
.class public final Lx/a/a2/r;
.super Lx/a/k1;
.source "MainDispatchers.kt"
# interfaces
.implements Lx/a/i0;
# instance fields
.field public final d:Ljava/lang/Throwable;
.field public final e:Ljava/lang/String;
# direct methods
.method public constructor <init>(Ljava/lang/Throwable;Ljava/lang/String;)V
.locals 0
invoke-direct {p0}, Lx/a/k1;-><init>()V
iput-object p1, p0, Lx/a/a2/r;->d:Ljava/lang/Throwable;
iput-object p2, p0, Lx/a/a2/r;->e:Ljava/lang/String;
return-void
.end method
.method public synthetic constructor <init>(Ljava/lang/Throwable;Ljava/lang/String;I)V
.locals 0
and-int/lit8 p3, p3, 0x2
if-eqz p3, :cond_0
const/4 p2, 0x0
:cond_0
invoke-direct {p0, p1, p2}, Lx/a/a2/r;-><init>(Ljava/lang/Throwable;Ljava/lang/String;)V
return-void
.end method
# virtual methods
.method public a(JLx/a/h;)V
.locals 0
const/4 p1, 0x0
if-eqz p3, :cond_0
invoke-virtual {p0}, Lx/a/a2/r;->e()Ljava/lang/Void;
throw p1
:cond_0
const-string p2, "continuation"
invoke-static {p2}, Lw/u/b/j;->a(Ljava/lang/String;)V
throw p1
.end method
.method public a(Lkotlin/coroutines/CoroutineContext;Ljava/lang/Runnable;)V
.locals 1
const/4 v0, 0x0
if-eqz p1, :cond_1
if-eqz p2, :cond_0
invoke-virtual {p0}, Lx/a/a2/r;->e()Ljava/lang/Void;
throw v0
:cond_0
const-string p1, "block"
invoke-static {p1}, Lw/u/b/j;->a(Ljava/lang/String;)V
throw v0
:cond_1
const-string p1, "context"
invoke-static {p1}, Lw/u/b/j;->a(Ljava/lang/String;)V
throw v0
.end method
.method public a(Lkotlin/coroutines/CoroutineContext;)Z
.locals 1
const/4 v0, 0x0
if-eqz p1, :cond_0
invoke-virtual {p0}, Lx/a/a2/r;->e()Ljava/lang/Void;
throw v0
:cond_0
const-string p1, "context"
invoke-static {p1}, Lw/u/b/j;->a(Ljava/lang/String;)V
throw v0
.end method
.method public final e()Ljava/lang/Void;
.locals 3
iget-object v0, p0, Lx/a/a2/r;->d:Ljava/lang/Throwable;
if-eqz v0, :cond_1
const-string v0, "Module with the Main dispatcher had failed to initialize"
invoke-static {v0}, Le/e/b/a/a;->a(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v0
iget-object v1, p0, Lx/a/a2/r;->e:Ljava/lang/String;
if-eqz v1, :cond_0
const-string v2, ". "
invoke-static {v2, v1}, Le/e/b/a/a;->a(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
move-result-object v1
if-eqz v1, :cond_0
goto :goto_0
:cond_0
const-string v1, ""
:goto_0
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
new-instance v1, Ljava/lang/IllegalStateException;
iget-object v2, p0, Lx/a/a2/r;->d:Ljava/lang/Throwable;
invoke-direct {v1, v0, v2}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;Ljava/lang/Throwable;)V
throw v1
:cond_1
new-instance v0, Ljava/lang/IllegalStateException;
const-string v1, "Module with the Main dispatcher is missing. Add dependency providing the Main dispatcher, e.g. \'kotlinx-coroutines-android\'"
invoke-direct {v0, v1}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
throw v0
.end method
.method public toString()Ljava/lang/String;
.locals 3
const-string v0, "Main[missing"
invoke-static {v0}, Le/e/b/a/a;->a(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v0
iget-object v1, p0, Lx/a/a2/r;->d:Ljava/lang/Throwable;
if-eqz v1, :cond_0
const-string v1, ", cause="
invoke-static {v1}, Le/e/b/a/a;->a(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v1
iget-object v2, p0, Lx/a/a2/r;->d:Ljava/lang/Throwable;
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v1
goto :goto_0
:cond_0
const-string v1, ""
:goto_0
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const/16 v1, 0x5d
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
return-object v0
.end method

View file

@ -0,0 +1,18 @@
.class public abstract Lx/a/a2/s;
.super Ljava/lang/Object;
.source "Atomic.kt"
# direct methods
.method public constructor <init>()V
.locals 0
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
# virtual methods
.method public abstract a(Ljava/lang/Object;)Ljava/lang/Object;
.end method

View file

@ -0,0 +1,56 @@
.class public final Lx/a/a2/t;
.super Ljava/lang/Object;
.source "LockFreeLinkedList.kt"
# instance fields
.field public final a:Lx/a/a2/n;
# direct methods
.method public constructor <init>(Lx/a/a2/n;)V
.locals 0
if-eqz p1, :cond_0
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
iput-object p1, p0, Lx/a/a2/t;->a:Lx/a/a2/n;
return-void
:cond_0
const-string p1, "ref"
invoke-static {p1}, Lw/u/b/j;->a(Ljava/lang/String;)V
const/4 p1, 0x0
throw p1
.end method
# virtual methods
.method public toString()Ljava/lang/String;
.locals 2
const-string v0, "Removed["
invoke-static {v0}, Le/e/b/a/a;->a(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v0
iget-object v1, p0, Lx/a/a2/t;->a:Lx/a/a2/n;
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
const/16 v1, 0x5d
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
return-object v0
.end method

View file

@ -0,0 +1,353 @@
.class public Lx/a/a2/u;
.super Lx/a/a;
.source "Scopes.kt"
# interfaces
.implements Lkotlin/coroutines/jvm/internal/CoroutineStackFrame;
# annotations
.annotation system Ldalvik/annotation/Signature;
value = {
"<T:",
"Ljava/lang/Object;",
">",
"Lx/a/a<",
"TT;>;",
"Lkotlin/coroutines/jvm/internal/CoroutineStackFrame;"
}
.end annotation
# instance fields
.field public final g:Lkotlin/coroutines/Continuation;
.annotation system Ldalvik/annotation/Signature;
value = {
"Lkotlin/coroutines/Continuation<",
"TT;>;"
}
.end annotation
.end field
# direct methods
.method public constructor <init>(Lkotlin/coroutines/CoroutineContext;Lkotlin/coroutines/Continuation;)V
.locals 1
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Lkotlin/coroutines/CoroutineContext;",
"Lkotlin/coroutines/Continuation<",
"-TT;>;)V"
}
.end annotation
const/4 v0, 0x0
if-eqz p1, :cond_1
if-eqz p2, :cond_0
const/4 v0, 0x1
invoke-direct {p0, p1, v0}, Lx/a/a;-><init>(Lkotlin/coroutines/CoroutineContext;Z)V
iput-object p2, p0, Lx/a/a2/u;->g:Lkotlin/coroutines/Continuation;
return-void
:cond_0
const-string p1, "uCont"
invoke-static {p1}, Lw/u/b/j;->a(Ljava/lang/String;)V
throw v0
:cond_1
const-string p1, "context"
invoke-static {p1}, Lw/u/b/j;->a(Ljava/lang/String;)V
throw v0
.end method
# virtual methods
.method public a(Ljava/lang/Object;I)V
.locals 7
instance-of v0, p1, Lx/a/q;
const-string v1, "Invalid mode "
const/4 v2, 0x3
const/4 v3, 0x2
const/4 v4, 0x1
const/4 v5, 0x4
const/4 v6, 0x0
if-eqz v0, :cond_8
check-cast p1, Lx/a/q;
iget-object p1, p1, Lx/a/q;->a:Ljava/lang/Throwable;
if-ne p2, v5, :cond_0
goto :goto_0
:cond_0
iget-object v0, p0, Lx/a/a2/u;->g:Lkotlin/coroutines/Continuation;
invoke-static {p1, v0}, Le/k/a/c/e/p/g;->a(Ljava/lang/Throwable;Lkotlin/coroutines/Continuation;)Ljava/lang/Throwable;
move-result-object p1
:goto_0
iget-object v0, p0, Lx/a/a2/u;->g:Lkotlin/coroutines/Continuation;
if-eqz v0, :cond_7
if-eqz p1, :cond_6
if-eqz p2, :cond_5
if-eq p2, v4, :cond_4
if-eq p2, v3, :cond_3
if-eq p2, v2, :cond_2
if-ne p2, v5, :cond_1
goto/16 :goto_1
:cond_1
invoke-static {v1, p2}, Le/e/b/a/a;->a(Ljava/lang/String;I)Ljava/lang/String;
move-result-object p1
new-instance p2, Ljava/lang/IllegalStateException;
invoke-virtual {p1}, Ljava/lang/Object;->toString()Ljava/lang/String;
move-result-object p1
invoke-direct {p2, p1}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
throw p2
:cond_2
invoke-interface {v0}, Lkotlin/coroutines/Continuation;->getContext()Lkotlin/coroutines/CoroutineContext;
move-result-object p2
invoke-static {p2, v6}, Lx/a/a2/y;->b(Lkotlin/coroutines/CoroutineContext;Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v1
:try_start_0
sget-object v2, Lw/i;->d:Lw/i$a;
invoke-static {p1}, Le/k/a/c/e/p/g;->createFailure(Ljava/lang/Throwable;)Ljava/lang/Object;
move-result-object p1
invoke-static {p1}, Lw/i;->constructor-impl(Ljava/lang/Object;)Ljava/lang/Object;
invoke-interface {v0, p1}, Lkotlin/coroutines/Continuation;->resumeWith(Ljava/lang/Object;)V
:try_end_0
.catchall {:try_start_0 .. :try_end_0} :catchall_0
invoke-static {p2, v1}, Lx/a/a2/y;->a(Lkotlin/coroutines/CoroutineContext;Ljava/lang/Object;)V
goto/16 :goto_1
:catchall_0
move-exception p1
invoke-static {p2, v1}, Lx/a/a2/y;->a(Lkotlin/coroutines/CoroutineContext;Ljava/lang/Object;)V
throw p1
:cond_3
sget-object p2, Lw/i;->d:Lw/i$a;
invoke-static {p1}, Le/k/a/c/e/p/g;->createFailure(Ljava/lang/Throwable;)Ljava/lang/Object;
move-result-object p1
invoke-interface {v0, p1}, Lkotlin/coroutines/Continuation;->resumeWith(Ljava/lang/Object;)V
goto/16 :goto_1
:cond_4
invoke-static {v0}, Le/k/a/c/e/p/g;->intercepted(Lkotlin/coroutines/Continuation;)Lkotlin/coroutines/Continuation;
move-result-object p2
invoke-static {p2, p1}, Lx/a/l0;->a(Lkotlin/coroutines/Continuation;Ljava/lang/Throwable;)V
goto :goto_1
:cond_5
invoke-static {v0}, Le/k/a/c/e/p/g;->intercepted(Lkotlin/coroutines/Continuation;)Lkotlin/coroutines/Continuation;
move-result-object p2
sget-object v0, Lw/i;->d:Lw/i$a;
invoke-static {p1}, Le/k/a/c/e/p/g;->createFailure(Ljava/lang/Throwable;)Ljava/lang/Object;
move-result-object p1
invoke-interface {p2, p1}, Lkotlin/coroutines/Continuation;->resumeWith(Ljava/lang/Object;)V
goto :goto_1
:cond_6
const-string p1, "exception"
invoke-static {p1}, Lw/u/b/j;->a(Ljava/lang/String;)V
throw v6
:cond_7
const-string p1, "$this$resumeUninterceptedWithExceptionMode"
invoke-static {p1}, Lw/u/b/j;->a(Ljava/lang/String;)V
throw v6
:cond_8
iget-object v0, p0, Lx/a/a2/u;->g:Lkotlin/coroutines/Continuation;
if-eqz v0, :cond_e
if-eqz p2, :cond_d
if-eq p2, v4, :cond_c
if-eq p2, v3, :cond_b
if-eq p2, v2, :cond_a
if-ne p2, v5, :cond_9
goto :goto_1
:cond_9
invoke-static {v1, p2}, Le/e/b/a/a;->a(Ljava/lang/String;I)Ljava/lang/String;
move-result-object p1
new-instance p2, Ljava/lang/IllegalStateException;
invoke-virtual {p1}, Ljava/lang/Object;->toString()Ljava/lang/String;
move-result-object p1
invoke-direct {p2, p1}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
throw p2
:cond_a
invoke-interface {v0}, Lkotlin/coroutines/Continuation;->getContext()Lkotlin/coroutines/CoroutineContext;
move-result-object p2
invoke-static {p2, v6}, Lx/a/a2/y;->b(Lkotlin/coroutines/CoroutineContext;Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v1
:try_start_1
sget-object v2, Lw/i;->d:Lw/i$a;
invoke-interface {v0, p1}, Lkotlin/coroutines/Continuation;->resumeWith(Ljava/lang/Object;)V
:try_end_1
.catchall {:try_start_1 .. :try_end_1} :catchall_1
invoke-static {p2, v1}, Lx/a/a2/y;->a(Lkotlin/coroutines/CoroutineContext;Ljava/lang/Object;)V
goto :goto_1
:catchall_1
move-exception p1
invoke-static {p2, v1}, Lx/a/a2/y;->a(Lkotlin/coroutines/CoroutineContext;Ljava/lang/Object;)V
throw p1
:cond_b
sget-object p2, Lw/i;->d:Lw/i$a;
invoke-interface {v0, p1}, Lkotlin/coroutines/Continuation;->resumeWith(Ljava/lang/Object;)V
goto :goto_1
:cond_c
invoke-static {v0}, Le/k/a/c/e/p/g;->intercepted(Lkotlin/coroutines/Continuation;)Lkotlin/coroutines/Continuation;
move-result-object p2
invoke-static {p2, p1}, Lx/a/l0;->a(Lkotlin/coroutines/Continuation;Ljava/lang/Object;)V
goto :goto_1
:cond_d
invoke-static {v0}, Le/k/a/c/e/p/g;->intercepted(Lkotlin/coroutines/Continuation;)Lkotlin/coroutines/Continuation;
move-result-object p2
sget-object v0, Lw/i;->d:Lw/i$a;
invoke-interface {p2, p1}, Lkotlin/coroutines/Continuation;->resumeWith(Ljava/lang/Object;)V
:goto_1
return-void
:cond_e
const-string p1, "$this$resumeUninterceptedMode"
invoke-static {p1}, Lw/u/b/j;->a(Ljava/lang/String;)V
throw v6
.end method
.method public d()Z
.locals 1
const/4 v0, 0x0
return v0
.end method
.method public final getCallerFrame()Lkotlin/coroutines/jvm/internal/CoroutineStackFrame;
.locals 1
iget-object v0, p0, Lx/a/a2/u;->g:Lkotlin/coroutines/Continuation;
check-cast v0, Lkotlin/coroutines/jvm/internal/CoroutineStackFrame;
return-object v0
.end method
.method public final getStackTraceElement()Ljava/lang/StackTraceElement;
.locals 1
const/4 v0, 0x0
return-object v0
.end method
.method public l()I
.locals 1
const/4 v0, 0x2
return v0
.end method

View file

@ -0,0 +1,40 @@
.class public final Lx/a/a2/v;
.super Ljava/lang/Object;
.source "Symbol.kt"
# instance fields
.field public final a:Ljava/lang/String;
# direct methods
.method public constructor <init>(Ljava/lang/String;)V
.locals 0
if-eqz p1, :cond_0
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
iput-object p1, p0, Lx/a/a2/v;->a:Ljava/lang/String;
return-void
:cond_0
const-string p1, "symbol"
invoke-static {p1}, Lw/u/b/j;->a(Ljava/lang/String;)V
const/4 p1, 0x0
throw p1
.end method
# virtual methods
.method public toString()Ljava/lang/String;
.locals 1
iget-object v0, p0, Lx/a/a2/v;->a:Ljava/lang/String;
return-object v0
.end method

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,50 @@
.class public final synthetic Lx/a/a2/x;
.super Ljava/lang/Object;
.source "SystemProps.kt"
# static fields
.field public static final a:I
# direct methods
.method public static constructor <clinit>()V
.locals 1
invoke-static {}, Ljava/lang/Runtime;->getRuntime()Ljava/lang/Runtime;
move-result-object v0
invoke-virtual {v0}, Ljava/lang/Runtime;->availableProcessors()I
move-result v0
sput v0, Lx/a/a2/x;->a:I
return-void
.end method
.method public static final a(Ljava/lang/String;)Ljava/lang/String;
.locals 1
const/4 v0, 0x0
if-eqz p0, :cond_0
:try_start_0
invoke-static {p0}, Ljava/lang/System;->getProperty(Ljava/lang/String;)Ljava/lang/String;
move-result-object v0
:try_end_0
.catch Ljava/lang/SecurityException; {:try_start_0 .. :try_end_0} :catch_0
:catch_0
return-object v0
:cond_0
const-string p0, "propertyName"
invoke-static {p0}, Lw/u/b/j;->a(Ljava/lang/String;)V
throw v0
.end method

View file

@ -0,0 +1,129 @@
.class public final Lx/a/a2/y$a;
.super Lw/u/b/k;
.source "ThreadContext.kt"
# interfaces
.implements Lkotlin/jvm/functions/Function2;
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lx/a/a2/y;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x19
name = null
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"Lw/u/b/k;",
"Lkotlin/jvm/functions/Function2<",
"Ljava/lang/Object;",
"Lkotlin/coroutines/CoroutineContext$a;",
"Ljava/lang/Object;",
">;"
}
.end annotation
# static fields
.field public static final d:Lx/a/a2/y$a;
# direct methods
.method public static constructor <clinit>()V
.locals 1
new-instance v0, Lx/a/a2/y$a;
invoke-direct {v0}, Lx/a/a2/y$a;-><init>()V
sput-object v0, Lx/a/a2/y$a;->d:Lx/a/a2/y$a;
return-void
.end method
.method public constructor <init>()V
.locals 1
const/4 v0, 0x2
invoke-direct {p0, v0}, Lw/u/b/k;-><init>(I)V
return-void
.end method
# virtual methods
.method public final a(Ljava/lang/Object;Lkotlin/coroutines/CoroutineContext$a;)Ljava/lang/Object;
.locals 2
const/4 v0, 0x0
if-eqz p2, :cond_4
instance-of v1, p2, Lx/a/s1;
if-eqz v1, :cond_3
instance-of v1, p1, Ljava/lang/Integer;
if-nez v1, :cond_0
move-object p1, v0
:cond_0
check-cast p1, Ljava/lang/Integer;
const/4 v0, 0x1
if-eqz p1, :cond_1
invoke-virtual {p1}, Ljava/lang/Integer;->intValue()I
move-result p1
goto :goto_0
:cond_1
const/4 p1, 0x1
:goto_0
if-nez p1, :cond_2
goto :goto_1
:cond_2
add-int/2addr p1, v0
invoke-static {p1}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object p2
:goto_1
return-object p2
:cond_3
return-object p1
:cond_4
const-string p1, "element"
invoke-static {p1}, Lw/u/b/j;->a(Ljava/lang/String;)V
throw v0
.end method
.method public bridge synthetic invoke(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
.locals 0
check-cast p2, Lkotlin/coroutines/CoroutineContext$a;
invoke-virtual {p0, p1, p2}, Lx/a/a2/y$a;->a(Ljava/lang/Object;Lkotlin/coroutines/CoroutineContext$a;)Ljava/lang/Object;
move-result-object p1
return-object p1
.end method

View file

@ -0,0 +1,115 @@
.class public final Lx/a/a2/y$b;
.super Lw/u/b/k;
.source "ThreadContext.kt"
# interfaces
.implements Lkotlin/jvm/functions/Function2;
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lx/a/a2/y;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x19
name = null
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"Lw/u/b/k;",
"Lkotlin/jvm/functions/Function2<",
"Lx/a/s1<",
"*>;",
"Lkotlin/coroutines/CoroutineContext$a;",
"Lx/a/s1<",
"*>;>;"
}
.end annotation
# static fields
.field public static final d:Lx/a/a2/y$b;
# direct methods
.method public static constructor <clinit>()V
.locals 1
new-instance v0, Lx/a/a2/y$b;
invoke-direct {v0}, Lx/a/a2/y$b;-><init>()V
sput-object v0, Lx/a/a2/y$b;->d:Lx/a/a2/y$b;
return-void
.end method
.method public constructor <init>()V
.locals 1
const/4 v0, 0x2
invoke-direct {p0, v0}, Lw/u/b/k;-><init>(I)V
return-void
.end method
# virtual methods
.method public final a(Lx/a/s1;Lkotlin/coroutines/CoroutineContext$a;)Lx/a/s1;
.locals 1
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Lx/a/s1<",
"*>;",
"Lkotlin/coroutines/CoroutineContext$a;",
")",
"Lx/a/s1<",
"*>;"
}
.end annotation
const/4 v0, 0x0
if-eqz p2, :cond_2
if-eqz p1, :cond_0
return-object p1
:cond_0
instance-of p1, p2, Lx/a/s1;
if-nez p1, :cond_1
move-object p2, v0
:cond_1
check-cast p2, Lx/a/s1;
return-object p2
:cond_2
const-string p1, "element"
invoke-static {p1}, Lw/u/b/j;->a(Ljava/lang/String;)V
throw v0
.end method
.method public bridge synthetic invoke(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
.locals 0
check-cast p1, Lx/a/s1;
check-cast p2, Lkotlin/coroutines/CoroutineContext$a;
invoke-virtual {p0, p1, p2}, Lx/a/a2/y$b;->a(Lx/a/s1;Lkotlin/coroutines/CoroutineContext$a;)Lx/a/s1;
move-result-object p1
return-object p1
.end method

View file

@ -0,0 +1,119 @@
.class public final Lx/a/a2/y$c;
.super Lw/u/b/k;
.source "ThreadContext.kt"
# interfaces
.implements Lkotlin/jvm/functions/Function2;
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lx/a/a2/y;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x19
name = null
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"Lw/u/b/k;",
"Lkotlin/jvm/functions/Function2<",
"Lx/a/a2/b0;",
"Lkotlin/coroutines/CoroutineContext$a;",
"Lx/a/a2/b0;",
">;"
}
.end annotation
# static fields
.field public static final d:Lx/a/a2/y$c;
# direct methods
.method public static constructor <clinit>()V
.locals 1
new-instance v0, Lx/a/a2/y$c;
invoke-direct {v0}, Lx/a/a2/y$c;-><init>()V
sput-object v0, Lx/a/a2/y$c;->d:Lx/a/a2/y$c;
return-void
.end method
.method public constructor <init>()V
.locals 1
const/4 v0, 0x2
invoke-direct {p0, v0}, Lw/u/b/k;-><init>(I)V
return-void
.end method
# virtual methods
.method public final a(Lx/a/a2/b0;Lkotlin/coroutines/CoroutineContext$a;)Lx/a/a2/b0;
.locals 4
const/4 v0, 0x0
if-eqz p1, :cond_2
if-eqz p2, :cond_1
instance-of v0, p2, Lx/a/s1;
if-eqz v0, :cond_0
iget-object v0, p1, Lx/a/a2/b0;->c:Lkotlin/coroutines/CoroutineContext;
iget-object v1, p1, Lx/a/a2/b0;->a:[Ljava/lang/Object;
iget v2, p1, Lx/a/a2/b0;->b:I
add-int/lit8 v3, v2, 0x1
iput v3, p1, Lx/a/a2/b0;->b:I
aget-object v1, v1, v2
check-cast p2, Lx/a/z;
invoke-virtual {p2, v0, v1}, Lx/a/z;->a(Lkotlin/coroutines/CoroutineContext;Ljava/lang/Object;)V
:cond_0
return-object p1
:cond_1
const-string p1, "element"
invoke-static {p1}, Lw/u/b/j;->a(Ljava/lang/String;)V
throw v0
:cond_2
const-string p1, "state"
invoke-static {p1}, Lw/u/b/j;->a(Ljava/lang/String;)V
throw v0
.end method
.method public bridge synthetic invoke(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
.locals 0
check-cast p1, Lx/a/a2/b0;
check-cast p2, Lkotlin/coroutines/CoroutineContext$a;
invoke-virtual {p0, p1, p2}, Lx/a/a2/y$c;->a(Lx/a/a2/b0;Lkotlin/coroutines/CoroutineContext$a;)Lx/a/a2/b0;
move-result-object p1
return-object p1
.end method

View file

@ -0,0 +1,121 @@
.class public final Lx/a/a2/y$d;
.super Lw/u/b/k;
.source "ThreadContext.kt"
# interfaces
.implements Lkotlin/jvm/functions/Function2;
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lx/a/a2/y;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x19
name = null
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"Lw/u/b/k;",
"Lkotlin/jvm/functions/Function2<",
"Lx/a/a2/b0;",
"Lkotlin/coroutines/CoroutineContext$a;",
"Lx/a/a2/b0;",
">;"
}
.end annotation
# static fields
.field public static final d:Lx/a/a2/y$d;
# direct methods
.method public static constructor <clinit>()V
.locals 1
new-instance v0, Lx/a/a2/y$d;
invoke-direct {v0}, Lx/a/a2/y$d;-><init>()V
sput-object v0, Lx/a/a2/y$d;->d:Lx/a/a2/y$d;
return-void
.end method
.method public constructor <init>()V
.locals 1
const/4 v0, 0x2
invoke-direct {p0, v0}, Lw/u/b/k;-><init>(I)V
return-void
.end method
# virtual methods
.method public final a(Lx/a/a2/b0;Lkotlin/coroutines/CoroutineContext$a;)Lx/a/a2/b0;
.locals 3
const/4 v0, 0x0
if-eqz p1, :cond_2
if-eqz p2, :cond_1
instance-of v0, p2, Lx/a/s1;
if-eqz v0, :cond_0
iget-object v0, p1, Lx/a/a2/b0;->c:Lkotlin/coroutines/CoroutineContext;
check-cast p2, Lx/a/z;
invoke-virtual {p2, v0}, Lx/a/z;->a(Lkotlin/coroutines/CoroutineContext;)Ljava/lang/Object;
move-result-object p2
iget-object v0, p1, Lx/a/a2/b0;->a:[Ljava/lang/Object;
iget v1, p1, Lx/a/a2/b0;->b:I
add-int/lit8 v2, v1, 0x1
iput v2, p1, Lx/a/a2/b0;->b:I
aput-object p2, v0, v1
:cond_0
return-object p1
:cond_1
const-string p1, "element"
invoke-static {p1}, Lw/u/b/j;->a(Ljava/lang/String;)V
throw v0
:cond_2
const-string p1, "state"
invoke-static {p1}, Lw/u/b/j;->a(Ljava/lang/String;)V
throw v0
.end method
.method public bridge synthetic invoke(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
.locals 0
check-cast p1, Lx/a/a2/b0;
check-cast p2, Lkotlin/coroutines/CoroutineContext$a;
invoke-virtual {p0, p1, p2}, Lx/a/a2/y$d;->a(Lx/a/a2/b0;Lkotlin/coroutines/CoroutineContext$a;)Lx/a/a2/b0;
move-result-object p1
return-object p1
.end method

View file

@ -0,0 +1,270 @@
.class public final Lx/a/a2/y;
.super Ljava/lang/Object;
.source "ThreadContext.kt"
# static fields
.field public static final a:Lx/a/a2/v;
.field public static final b:Lkotlin/jvm/functions/Function2;
.annotation system Ldalvik/annotation/Signature;
value = {
"Lkotlin/jvm/functions/Function2<",
"Ljava/lang/Object;",
"Lkotlin/coroutines/CoroutineContext$a;",
"Ljava/lang/Object;",
">;"
}
.end annotation
.end field
.field public static final c:Lkotlin/jvm/functions/Function2;
.annotation system Ldalvik/annotation/Signature;
value = {
"Lkotlin/jvm/functions/Function2<",
"Lx/a/s1<",
"*>;",
"Lkotlin/coroutines/CoroutineContext$a;",
"Lx/a/s1<",
"*>;>;"
}
.end annotation
.end field
.field public static final d:Lkotlin/jvm/functions/Function2;
.annotation system Ldalvik/annotation/Signature;
value = {
"Lkotlin/jvm/functions/Function2<",
"Lx/a/a2/b0;",
"Lkotlin/coroutines/CoroutineContext$a;",
"Lx/a/a2/b0;",
">;"
}
.end annotation
.end field
.field public static final e:Lkotlin/jvm/functions/Function2;
.annotation system Ldalvik/annotation/Signature;
value = {
"Lkotlin/jvm/functions/Function2<",
"Lx/a/a2/b0;",
"Lkotlin/coroutines/CoroutineContext$a;",
"Lx/a/a2/b0;",
">;"
}
.end annotation
.end field
# direct methods
.method public static constructor <clinit>()V
.locals 2
new-instance v0, Lx/a/a2/v;
const-string v1, "ZERO"
invoke-direct {v0, v1}, Lx/a/a2/v;-><init>(Ljava/lang/String;)V
sput-object v0, Lx/a/a2/y;->a:Lx/a/a2/v;
sget-object v0, Lx/a/a2/y$a;->d:Lx/a/a2/y$a;
sput-object v0, Lx/a/a2/y;->b:Lkotlin/jvm/functions/Function2;
sget-object v0, Lx/a/a2/y$b;->d:Lx/a/a2/y$b;
sput-object v0, Lx/a/a2/y;->c:Lkotlin/jvm/functions/Function2;
sget-object v0, Lx/a/a2/y$d;->d:Lx/a/a2/y$d;
sput-object v0, Lx/a/a2/y;->d:Lkotlin/jvm/functions/Function2;
sget-object v0, Lx/a/a2/y$c;->d:Lx/a/a2/y$c;
sput-object v0, Lx/a/a2/y;->e:Lkotlin/jvm/functions/Function2;
return-void
.end method
.method public static final a(Lkotlin/coroutines/CoroutineContext;)Ljava/lang/Object;
.locals 3
const/4 v0, 0x0
if-eqz p0, :cond_1
const/4 v1, 0x0
invoke-static {v1}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v1
sget-object v2, Lx/a/a2/y;->b:Lkotlin/jvm/functions/Function2;
invoke-interface {p0, v1, v2}, Lkotlin/coroutines/CoroutineContext;->fold(Ljava/lang/Object;Lkotlin/jvm/functions/Function2;)Ljava/lang/Object;
move-result-object p0
if-eqz p0, :cond_0
return-object p0
:cond_0
invoke-static {}, Lw/u/b/j;->throwNpe()V
throw v0
:cond_1
const-string p0, "context"
invoke-static {p0}, Lw/u/b/j;->a(Ljava/lang/String;)V
throw v0
.end method
.method public static final a(Lkotlin/coroutines/CoroutineContext;Ljava/lang/Object;)V
.locals 2
const/4 v0, 0x0
if-eqz p0, :cond_3
sget-object v1, Lx/a/a2/y;->a:Lx/a/a2/v;
if-ne p1, v1, :cond_0
return-void
:cond_0
instance-of v1, p1, Lx/a/a2/b0;
if-eqz v1, :cond_1
move-object v0, p1
check-cast v0, Lx/a/a2/b0;
const/4 v1, 0x0
iput v1, v0, Lx/a/a2/b0;->b:I
sget-object v0, Lx/a/a2/y;->e:Lkotlin/jvm/functions/Function2;
invoke-interface {p0, p1, v0}, Lkotlin/coroutines/CoroutineContext;->fold(Ljava/lang/Object;Lkotlin/jvm/functions/Function2;)Ljava/lang/Object;
goto :goto_0
:cond_1
sget-object v1, Lx/a/a2/y;->c:Lkotlin/jvm/functions/Function2;
invoke-interface {p0, v0, v1}, Lkotlin/coroutines/CoroutineContext;->fold(Ljava/lang/Object;Lkotlin/jvm/functions/Function2;)Ljava/lang/Object;
move-result-object v0
if-eqz v0, :cond_2
check-cast v0, Lx/a/z;
invoke-virtual {v0, p0, p1}, Lx/a/z;->a(Lkotlin/coroutines/CoroutineContext;Ljava/lang/Object;)V
:goto_0
return-void
:cond_2
new-instance p0, Lw/l;
const-string p1, "null cannot be cast to non-null type kotlinx.coroutines.ThreadContextElement<kotlin.Any?>"
invoke-direct {p0, p1}, Lw/l;-><init>(Ljava/lang/String;)V
throw p0
:cond_3
const-string p0, "context"
invoke-static {p0}, Lw/u/b/j;->a(Ljava/lang/String;)V
throw v0
.end method
.method public static final b(Lkotlin/coroutines/CoroutineContext;Ljava/lang/Object;)Ljava/lang/Object;
.locals 1
if-eqz p0, :cond_4
if-eqz p1, :cond_0
goto :goto_0
:cond_0
invoke-static {p0}, Lx/a/a2/y;->a(Lkotlin/coroutines/CoroutineContext;)Ljava/lang/Object;
move-result-object p1
:goto_0
const/4 v0, 0x0
invoke-static {v0}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v0
if-ne p1, v0, :cond_1
sget-object p0, Lx/a/a2/y;->a:Lx/a/a2/v;
goto :goto_1
:cond_1
instance-of v0, p1, Ljava/lang/Integer;
if-eqz v0, :cond_2
new-instance v0, Lx/a/a2/b0;
check-cast p1, Ljava/lang/Number;
invoke-virtual {p1}, Ljava/lang/Number;->intValue()I
move-result p1
invoke-direct {v0, p0, p1}, Lx/a/a2/b0;-><init>(Lkotlin/coroutines/CoroutineContext;I)V
sget-object p1, Lx/a/a2/y;->d:Lkotlin/jvm/functions/Function2;
invoke-interface {p0, v0, p1}, Lkotlin/coroutines/CoroutineContext;->fold(Ljava/lang/Object;Lkotlin/jvm/functions/Function2;)Ljava/lang/Object;
move-result-object p0
goto :goto_1
:cond_2
if-eqz p1, :cond_3
check-cast p1, Lx/a/z;
invoke-virtual {p1, p0}, Lx/a/z;->a(Lkotlin/coroutines/CoroutineContext;)Ljava/lang/Object;
move-result-object p0
:goto_1
return-object p0
:cond_3
new-instance p0, Lw/l;
const-string p1, "null cannot be cast to non-null type kotlinx.coroutines.ThreadContextElement<kotlin.Any?>"
invoke-direct {p0, p1}, Lw/l;-><init>(Ljava/lang/String;)V
throw p0
:cond_4
const-string p0, "context"
invoke-static {p0}, Lw/u/b/j;->a(Ljava/lang/String;)V
const/4 p0, 0x0
throw p0
.end method

View file

@ -0,0 +1,671 @@
.class public final Lx/a/a2/z;
.super Ljava/lang/Object;
.source "ThreadSafeHeap.kt"
# annotations
.annotation system Ldalvik/annotation/Signature;
value = {
"<T::",
"Lx/a/a2/a0;",
":",
"Ljava/lang/Comparable<",
"-TT;>;>",
"Ljava/lang/Object;"
}
.end annotation
# instance fields
.field public a:[Lx/a/a2/a0;
.annotation system Ldalvik/annotation/Signature;
value = {
"[TT;"
}
.end annotation
.end field
.field public volatile size:I
# direct methods
.method public constructor <init>()V
.locals 0
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
# virtual methods
.method public final declared-synchronized a()Lx/a/a2/a0;
.locals 2
.annotation system Ldalvik/annotation/Signature;
value = {
"()TT;"
}
.end annotation
monitor-enter p0
:try_start_0
iget-object v0, p0, Lx/a/a2/z;->a:[Lx/a/a2/a0;
if-eqz v0, :cond_0
const/4 v1, 0x0
aget-object v0, v0, v1
:try_end_0
.catchall {:try_start_0 .. :try_end_0} :catchall_0
goto :goto_0
:catchall_0
move-exception v0
goto :goto_1
:cond_0
const/4 v0, 0x0
:goto_0
monitor-exit p0
return-object v0
:goto_1
monitor-exit p0
throw v0
.end method
.method public final a(I)Lx/a/a2/a0;
.locals 11
.annotation system Ldalvik/annotation/Signature;
value = {
"(I)TT;"
}
.end annotation
iget v0, p0, Lx/a/a2/z;->size:I
const/4 v1, 0x0
const/4 v2, 0x1
if-lez v0, :cond_0
const/4 v0, 0x1
goto :goto_0
:cond_0
const/4 v0, 0x0
:goto_0
const-string v3, "Check failed."
if-eqz v0, :cond_11
iget-object v0, p0, Lx/a/a2/z;->a:[Lx/a/a2/a0;
const/4 v4, 0x0
if-eqz v0, :cond_10
iget v5, p0, Lx/a/a2/z;->size:I
const/4 v6, -0x1
add-int/2addr v5, v6
iput v5, p0, Lx/a/a2/z;->size:I
iget v5, p0, Lx/a/a2/z;->size:I
if-ge p1, v5, :cond_c
iget v5, p0, Lx/a/a2/z;->size:I
invoke-virtual {p0, p1, v5}, Lx/a/a2/z;->a(II)V
add-int/lit8 v5, p1, -0x1
div-int/lit8 v5, v5, 0x2
if-lez p1, :cond_3
aget-object v7, v0, p1
if-eqz v7, :cond_2
check-cast v7, Ljava/lang/Comparable;
aget-object v8, v0, v5
if-eqz v8, :cond_1
invoke-interface {v7, v8}, Ljava/lang/Comparable;->compareTo(Ljava/lang/Object;)I
move-result v7
if-gez v7, :cond_3
invoke-virtual {p0, p1, v5}, Lx/a/a2/z;->a(II)V
invoke-virtual {p0, v5}, Lx/a/a2/z;->b(I)V
goto :goto_3
:cond_1
invoke-static {}, Lw/u/b/j;->throwNpe()V
throw v4
:cond_2
invoke-static {}, Lw/u/b/j;->throwNpe()V
throw v4
:cond_3
:goto_1
mul-int/lit8 v5, p1, 0x2
add-int/2addr v5, v2
iget v7, p0, Lx/a/a2/z;->size:I
if-lt v5, v7, :cond_4
goto :goto_3
:cond_4
iget-object v7, p0, Lx/a/a2/z;->a:[Lx/a/a2/a0;
if-eqz v7, :cond_b
add-int/lit8 v8, v5, 0x1
iget v9, p0, Lx/a/a2/z;->size:I
if-ge v8, v9, :cond_7
aget-object v9, v7, v8
if-eqz v9, :cond_6
check-cast v9, Ljava/lang/Comparable;
aget-object v10, v7, v5
if-eqz v10, :cond_5
invoke-interface {v9, v10}, Ljava/lang/Comparable;->compareTo(Ljava/lang/Object;)I
move-result v9
if-gez v9, :cond_7
move v5, v8
goto :goto_2
:cond_5
invoke-static {}, Lw/u/b/j;->throwNpe()V
throw v4
:cond_6
invoke-static {}, Lw/u/b/j;->throwNpe()V
throw v4
:cond_7
:goto_2
aget-object v8, v7, p1
if-eqz v8, :cond_a
check-cast v8, Ljava/lang/Comparable;
aget-object v7, v7, v5
if-eqz v7, :cond_9
invoke-interface {v8, v7}, Ljava/lang/Comparable;->compareTo(Ljava/lang/Object;)I
move-result v7
if-gtz v7, :cond_8
goto :goto_3
:cond_8
invoke-virtual {p0, p1, v5}, Lx/a/a2/z;->a(II)V
move p1, v5
goto :goto_1
:cond_9
invoke-static {}, Lw/u/b/j;->throwNpe()V
throw v4
:cond_a
invoke-static {}, Lw/u/b/j;->throwNpe()V
throw v4
:cond_b
invoke-static {}, Lw/u/b/j;->throwNpe()V
throw v4
:cond_c
:goto_3
iget p1, p0, Lx/a/a2/z;->size:I
aget-object p1, v0, p1
if-eqz p1, :cond_f
check-cast p1, Lx/a/s0$b;
invoke-virtual {p1}, Lx/a/s0$b;->a()Lx/a/a2/z;
move-result-object v5
if-ne v5, p0, :cond_d
const/4 v1, 0x1
:cond_d
if-eqz v1, :cond_e
invoke-virtual {p1, v4}, Lx/a/s0$b;->a(Lx/a/a2/z;)V
iput v6, p1, Lx/a/s0$b;->e:I
iget v1, p0, Lx/a/a2/z;->size:I
aput-object v4, v0, v1
return-object p1
:cond_e
new-instance p1, Ljava/lang/IllegalStateException;
invoke-virtual {v3}, Ljava/lang/Object;->toString()Ljava/lang/String;
move-result-object v0
invoke-direct {p1, v0}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
throw p1
:cond_f
invoke-static {}, Lw/u/b/j;->throwNpe()V
throw v4
:cond_10
invoke-static {}, Lw/u/b/j;->throwNpe()V
throw v4
:cond_11
new-instance p1, Ljava/lang/IllegalStateException;
invoke-virtual {v3}, Ljava/lang/Object;->toString()Ljava/lang/String;
move-result-object v0
invoke-direct {p1, v0}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
throw p1
.end method
.method public final a(II)V
.locals 4
iget-object v0, p0, Lx/a/a2/z;->a:[Lx/a/a2/a0;
const/4 v1, 0x0
if-eqz v0, :cond_2
aget-object v2, v0, p2
if-eqz v2, :cond_1
aget-object v3, v0, p1
if-eqz v3, :cond_0
aput-object v2, v0, p1
aput-object v3, v0, p2
check-cast v2, Lx/a/s0$b;
iput p1, v2, Lx/a/s0$b;->e:I
check-cast v3, Lx/a/s0$b;
iput p2, v3, Lx/a/s0$b;->e:I
return-void
:cond_0
invoke-static {}, Lw/u/b/j;->throwNpe()V
throw v1
:cond_1
invoke-static {}, Lw/u/b/j;->throwNpe()V
throw v1
:cond_2
invoke-static {}, Lw/u/b/j;->throwNpe()V
throw v1
.end method
.method public final a(Lx/a/a2/a0;)V
.locals 4
.annotation system Ldalvik/annotation/Signature;
value = {
"(TT;)V"
}
.end annotation
if-eqz p1, :cond_4
move-object v0, p1
check-cast v0, Lx/a/s0$b;
invoke-virtual {v0}, Lx/a/s0$b;->a()Lx/a/a2/z;
move-result-object v1
if-nez v1, :cond_0
const/4 v1, 0x1
goto :goto_0
:cond_0
const/4 v1, 0x0
:goto_0
if-eqz v1, :cond_3
invoke-virtual {v0, p0}, Lx/a/s0$b;->a(Lx/a/a2/z;)V
iget-object v1, p0, Lx/a/a2/z;->a:[Lx/a/a2/a0;
if-nez v1, :cond_1
const/4 v1, 0x4
new-array v1, v1, [Lx/a/a2/a0;
iput-object v1, p0, Lx/a/a2/z;->a:[Lx/a/a2/a0;
goto :goto_1
:cond_1
iget v2, p0, Lx/a/a2/z;->size:I
array-length v3, v1
if-lt v2, v3, :cond_2
iget v2, p0, Lx/a/a2/z;->size:I
mul-int/lit8 v2, v2, 0x2
invoke-static {v1, v2}, Ljava/util/Arrays;->copyOf([Ljava/lang/Object;I)[Ljava/lang/Object;
move-result-object v1
const-string v2, "java.util.Arrays.copyOf(this, newSize)"
invoke-static {v1, v2}, Lw/u/b/j;->checkExpressionValueIsNotNull(Ljava/lang/Object;Ljava/lang/String;)V
check-cast v1, [Lx/a/a2/a0;
iput-object v1, p0, Lx/a/a2/z;->a:[Lx/a/a2/a0;
:cond_2
:goto_1
iget v2, p0, Lx/a/a2/z;->size:I
add-int/lit8 v3, v2, 0x1
iput v3, p0, Lx/a/a2/z;->size:I
aput-object p1, v1, v2
iput v2, v0, Lx/a/s0$b;->e:I
invoke-virtual {p0, v2}, Lx/a/a2/z;->b(I)V
return-void
:cond_3
new-instance p1, Ljava/lang/IllegalStateException;
const-string v0, "Check failed."
invoke-virtual {v0}, Ljava/lang/Object;->toString()Ljava/lang/String;
move-result-object v0
invoke-direct {p1, v0}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
throw p1
:cond_4
const-string p1, "node"
invoke-static {p1}, Lw/u/b/j;->a(Ljava/lang/String;)V
const/4 p1, 0x0
throw p1
.end method
.method public final declared-synchronized b()Lx/a/a2/a0;
.locals 1
.annotation system Ldalvik/annotation/Signature;
value = {
"()TT;"
}
.end annotation
monitor-enter p0
:try_start_0
iget v0, p0, Lx/a/a2/z;->size:I
if-lez v0, :cond_0
const/4 v0, 0x0
invoke-virtual {p0, v0}, Lx/a/a2/z;->a(I)Lx/a/a2/a0;
move-result-object v0
:try_end_0
.catchall {:try_start_0 .. :try_end_0} :catchall_0
goto :goto_0
:cond_0
const/4 v0, 0x0
:goto_0
monitor-exit p0
return-object v0
:catchall_0
move-exception v0
monitor-exit p0
throw v0
.end method
.method public final b(I)V
.locals 4
:goto_0
if-gtz p1, :cond_0
return-void
:cond_0
iget-object v0, p0, Lx/a/a2/z;->a:[Lx/a/a2/a0;
const/4 v1, 0x0
if-eqz v0, :cond_4
add-int/lit8 v2, p1, -0x1
div-int/lit8 v2, v2, 0x2
aget-object v3, v0, v2
if-eqz v3, :cond_3
check-cast v3, Ljava/lang/Comparable;
aget-object v0, v0, p1
if-eqz v0, :cond_2
invoke-interface {v3, v0}, Ljava/lang/Comparable;->compareTo(Ljava/lang/Object;)I
move-result v0
if-gtz v0, :cond_1
return-void
:cond_1
invoke-virtual {p0, p1, v2}, Lx/a/a2/z;->a(II)V
move p1, v2
goto :goto_0
:cond_2
invoke-static {}, Lw/u/b/j;->throwNpe()V
throw v1
:cond_3
invoke-static {}, Lw/u/b/j;->throwNpe()V
throw v1
:cond_4
invoke-static {}, Lw/u/b/j;->throwNpe()V
throw v1
.end method
.method public final declared-synchronized b(Lx/a/a2/a0;)Z
.locals 3
.annotation system Ldalvik/annotation/Signature;
value = {
"(TT;)Z"
}
.end annotation
monitor-enter p0
:try_start_0
const-string v0, "node"
:try_end_0
.catchall {:try_start_0 .. :try_end_0} :catchall_0
if-eqz p1, :cond_3
move-object v0, p1
check-cast v0, Lx/a/s0$b;
:try_start_1
invoke-virtual {v0}, Lx/a/s0$b;->a()Lx/a/a2/z;
move-result-object v0
const/4 v1, 0x1
const/4 v2, 0x0
if-nez v0, :cond_0
const/4 v1, 0x0
goto :goto_0
:cond_0
check-cast p1, Lx/a/s0$b;
iget p1, p1, Lx/a/s0$b;->e:I
if-ltz p1, :cond_1
const/4 v2, 0x1
:cond_1
if-eqz v2, :cond_2
invoke-virtual {p0, p1}, Lx/a/a2/z;->a(I)Lx/a/a2/a0;
:try_end_1
.catchall {:try_start_1 .. :try_end_1} :catchall_0
:goto_0
monitor-exit p0
return v1
:cond_2
:try_start_2
const-string p1, "Check failed."
new-instance v0, Ljava/lang/IllegalStateException;
invoke-virtual {p1}, Ljava/lang/Object;->toString()Ljava/lang/String;
move-result-object p1
invoke-direct {v0, p1}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
throw v0
:cond_3
invoke-static {v0}, Lw/u/b/j;->a(Ljava/lang/String;)V
:try_end_2
.catchall {:try_start_2 .. :try_end_2} :catchall_0
const/4 p1, 0x0
throw p1
:catchall_0
move-exception p1
monitor-exit p0
throw p1
.end method

View file

@ -0,0 +1,42 @@
.class public final Lx/a/b;
.super Ljava/lang/Object;
.source "CancellableContinuationImpl.kt"
# interfaces
.implements Lx/a/n1;
# static fields
.field public static final d:Lx/a/b;
# direct methods
.method public static constructor <clinit>()V
.locals 1
new-instance v0, Lx/a/b;
invoke-direct {v0}, Lx/a/b;-><init>()V
sput-object v0, Lx/a/b;->d:Lx/a/b;
return-void
.end method
.method public constructor <init>()V
.locals 0
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
# virtual methods
.method public toString()Ljava/lang/String;
.locals 1
const-string v0, "Active"
return-object v0
.end method

View file

@ -0,0 +1,124 @@
.class public final synthetic Lx/a/b0;
.super Ljava/lang/Object;
# static fields
.field public static final synthetic a:[I
.field public static final synthetic b:[I
# direct methods
.method public static synthetic constructor <clinit>()V
.locals 6
invoke-static {}, Lx/a/c0;->values()[Lx/a/c0;
move-result-object v0
array-length v0, v0
new-array v0, v0, [I
sput-object v0, Lx/a/b0;->a:[I
sget-object v0, Lx/a/b0;->a:[I
sget-object v1, Lx/a/c0;->d:Lx/a/c0;
invoke-virtual {v1}, Ljava/lang/Enum;->ordinal()I
move-result v1
const/4 v2, 0x1
aput v2, v0, v1
sget-object v0, Lx/a/b0;->a:[I
sget-object v1, Lx/a/c0;->f:Lx/a/c0;
invoke-virtual {v1}, Ljava/lang/Enum;->ordinal()I
move-result v1
const/4 v3, 0x2
aput v3, v0, v1
sget-object v0, Lx/a/b0;->a:[I
sget-object v1, Lx/a/c0;->g:Lx/a/c0;
invoke-virtual {v1}, Ljava/lang/Enum;->ordinal()I
move-result v1
const/4 v4, 0x3
aput v4, v0, v1
sget-object v0, Lx/a/b0;->a:[I
sget-object v1, Lx/a/c0;->e:Lx/a/c0;
invoke-virtual {v1}, Ljava/lang/Enum;->ordinal()I
move-result v1
const/4 v5, 0x4
aput v5, v0, v1
invoke-static {}, Lx/a/c0;->values()[Lx/a/c0;
move-result-object v0
array-length v0, v0
new-array v0, v0, [I
sput-object v0, Lx/a/b0;->b:[I
sget-object v0, Lx/a/b0;->b:[I
sget-object v1, Lx/a/c0;->d:Lx/a/c0;
invoke-virtual {v1}, Ljava/lang/Enum;->ordinal()I
move-result v1
aput v2, v0, v1
sget-object v0, Lx/a/b0;->b:[I
sget-object v1, Lx/a/c0;->f:Lx/a/c0;
invoke-virtual {v1}, Ljava/lang/Enum;->ordinal()I
move-result v1
aput v3, v0, v1
sget-object v0, Lx/a/b0;->b:[I
sget-object v1, Lx/a/c0;->g:Lx/a/c0;
invoke-virtual {v1}, Ljava/lang/Enum;->ordinal()I
move-result v1
aput v4, v0, v1
sget-object v0, Lx/a/b0;->b:[I
sget-object v1, Lx/a/c0;->e:Lx/a/c0;
invoke-virtual {v1}, Ljava/lang/Enum;->ordinal()I
move-result v1
aput v5, v0, v1
return-void
.end method

View file

@ -0,0 +1,168 @@
.class public final Lx/a/b1;
.super Lx/a/e1;
.source "JobSupport.kt"
# annotations
.annotation system Ldalvik/annotation/Signature;
value = {
"Lx/a/e1<",
"Lkotlinx/coroutines/Job;",
">;"
}
.end annotation
# static fields
.field public static final i:Ljava/util/concurrent/atomic/AtomicIntegerFieldUpdater;
# instance fields
.field public volatile _invoked:I
.field public final h:Lkotlin/jvm/functions/Function1;
.annotation system Ldalvik/annotation/Signature;
value = {
"Lkotlin/jvm/functions/Function1<",
"Ljava/lang/Throwable;",
"Lkotlin/Unit;",
">;"
}
.end annotation
.end field
# direct methods
.method public static constructor <clinit>()V
.locals 2
const-class v0, Lx/a/b1;
const-string v1, "_invoked"
invoke-static {v0, v1}, Ljava/util/concurrent/atomic/AtomicIntegerFieldUpdater;->newUpdater(Ljava/lang/Class;Ljava/lang/String;)Ljava/util/concurrent/atomic/AtomicIntegerFieldUpdater;
move-result-object v0
sput-object v0, Lx/a/b1;->i:Ljava/util/concurrent/atomic/AtomicIntegerFieldUpdater;
return-void
.end method
.method public constructor <init>(Lkotlinx/coroutines/Job;Lkotlin/jvm/functions/Function1;)V
.locals 1
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Lkotlinx/coroutines/Job;",
"Lkotlin/jvm/functions/Function1<",
"-",
"Ljava/lang/Throwable;",
"Lkotlin/Unit;",
">;)V"
}
.end annotation
const/4 v0, 0x0
if-eqz p1, :cond_1
if-eqz p2, :cond_0
invoke-direct {p0, p1}, Lx/a/e1;-><init>(Lkotlinx/coroutines/Job;)V
iput-object p2, p0, Lx/a/b1;->h:Lkotlin/jvm/functions/Function1;
const/4 p1, 0x0
iput p1, p0, Lx/a/b1;->_invoked:I
return-void
:cond_0
const-string p1, "handler"
invoke-static {p1}, Lw/u/b/j;->a(Ljava/lang/String;)V
throw v0
:cond_1
const-string p1, "job"
invoke-static {p1}, Lw/u/b/j;->a(Ljava/lang/String;)V
throw v0
.end method
# virtual methods
.method public b(Ljava/lang/Throwable;)V
.locals 3
sget-object v0, Lx/a/b1;->i:Ljava/util/concurrent/atomic/AtomicIntegerFieldUpdater;
const/4 v1, 0x0
const/4 v2, 0x1
invoke-virtual {v0, p0, v1, v2}, Ljava/util/concurrent/atomic/AtomicIntegerFieldUpdater;->compareAndSet(Ljava/lang/Object;II)Z
move-result v0
if-eqz v0, :cond_0
iget-object v0, p0, Lx/a/b1;->h:Lkotlin/jvm/functions/Function1;
invoke-interface {v0, p1}, Lkotlin/jvm/functions/Function1;->invoke(Ljava/lang/Object;)Ljava/lang/Object;
:cond_0
return-void
.end method
.method public bridge synthetic invoke(Ljava/lang/Object;)Ljava/lang/Object;
.locals 0
check-cast p1, Ljava/lang/Throwable;
invoke-virtual {p0, p1}, Lx/a/b1;->b(Ljava/lang/Throwable;)V
sget-object p1, Lkotlin/Unit;->a:Lkotlin/Unit;
return-object p1
.end method
.method public toString()Ljava/lang/String;
.locals 2
const-string v0, "InvokeOnCancelling["
invoke-static {v0}, Le/e/b/a/a;->a(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v0
invoke-static {p0}, Lx/a/e0;->a(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/16 v1, 0x40
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
invoke-static {p0}, Lx/a/e0;->b(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/16 v1, 0x5d
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
return-object v0
.end method

View file

@ -0,0 +1,84 @@
.class public final synthetic Lx/a/b2/a;
.super Ljava/lang/Object;
# static fields
.field public static final synthetic a:[I
# direct methods
.method public static synthetic constructor <clinit>()V
.locals 3
invoke-static {}, Lx/a/b2/b$b;->values()[Lx/a/b2/b$b;
move-result-object v0
array-length v0, v0
new-array v0, v0, [I
sput-object v0, Lx/a/b2/a;->a:[I
sget-object v0, Lx/a/b2/a;->a:[I
sget-object v1, Lx/a/b2/b$b;->f:Lx/a/b2/b$b;
invoke-virtual {v1}, Ljava/lang/Enum;->ordinal()I
move-result v1
const/4 v2, 0x1
aput v2, v0, v1
sget-object v0, Lx/a/b2/a;->a:[I
sget-object v1, Lx/a/b2/b$b;->e:Lx/a/b2/b$b;
invoke-virtual {v1}, Ljava/lang/Enum;->ordinal()I
move-result v1
const/4 v2, 0x2
aput v2, v0, v1
sget-object v0, Lx/a/b2/a;->a:[I
sget-object v1, Lx/a/b2/b$b;->d:Lx/a/b2/b$b;
invoke-virtual {v1}, Ljava/lang/Enum;->ordinal()I
move-result v1
const/4 v2, 0x3
aput v2, v0, v1
sget-object v0, Lx/a/b2/a;->a:[I
sget-object v1, Lx/a/b2/b$b;->g:Lx/a/b2/b$b;
invoke-virtual {v1}, Ljava/lang/Enum;->ordinal()I
move-result v1
const/4 v2, 0x4
aput v2, v0, v1
sget-object v0, Lx/a/b2/a;->a:[I
sget-object v1, Lx/a/b2/b$b;->h:Lx/a/b2/b$b;
invoke-virtual {v1}, Ljava/lang/Enum;->ordinal()I
move-result v1
const/4 v2, 0x5
aput v2, v0, v1
return-void
.end method

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,151 @@
.class public final enum Lx/a/b2/b$b;
.super Ljava/lang/Enum;
.source "CoroutineScheduler.kt"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lx/a/b2/b;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x4019
name = "b"
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/lang/Enum<",
"Lx/a/b2/b$b;",
">;"
}
.end annotation
# static fields
.field public static final enum d:Lx/a/b2/b$b;
.field public static final enum e:Lx/a/b2/b$b;
.field public static final enum f:Lx/a/b2/b$b;
.field public static final enum g:Lx/a/b2/b$b;
.field public static final enum h:Lx/a/b2/b$b;
.field public static final synthetic i:[Lx/a/b2/b$b;
# direct methods
.method public static constructor <clinit>()V
.locals 4
const/4 v0, 0x5
new-array v0, v0, [Lx/a/b2/b$b;
new-instance v1, Lx/a/b2/b$b;
const/4 v2, 0x0
const-string v3, "CPU_ACQUIRED"
invoke-direct {v1, v3, v2}, Lx/a/b2/b$b;-><init>(Ljava/lang/String;I)V
sput-object v1, Lx/a/b2/b$b;->d:Lx/a/b2/b$b;
aput-object v1, v0, v2
new-instance v1, Lx/a/b2/b$b;
const/4 v2, 0x1
const-string v3, "BLOCKING"
invoke-direct {v1, v3, v2}, Lx/a/b2/b$b;-><init>(Ljava/lang/String;I)V
sput-object v1, Lx/a/b2/b$b;->e:Lx/a/b2/b$b;
aput-object v1, v0, v2
new-instance v1, Lx/a/b2/b$b;
const/4 v2, 0x2
const-string v3, "PARKING"
invoke-direct {v1, v3, v2}, Lx/a/b2/b$b;-><init>(Ljava/lang/String;I)V
sput-object v1, Lx/a/b2/b$b;->f:Lx/a/b2/b$b;
aput-object v1, v0, v2
new-instance v1, Lx/a/b2/b$b;
const/4 v2, 0x3
const-string v3, "RETIRING"
invoke-direct {v1, v3, v2}, Lx/a/b2/b$b;-><init>(Ljava/lang/String;I)V
sput-object v1, Lx/a/b2/b$b;->g:Lx/a/b2/b$b;
aput-object v1, v0, v2
new-instance v1, Lx/a/b2/b$b;
const/4 v2, 0x4
const-string v3, "TERMINATED"
invoke-direct {v1, v3, v2}, Lx/a/b2/b$b;-><init>(Ljava/lang/String;I)V
sput-object v1, Lx/a/b2/b$b;->h:Lx/a/b2/b$b;
aput-object v1, v0, v2
sput-object v0, Lx/a/b2/b$b;->i:[Lx/a/b2/b$b;
return-void
.end method
.method public constructor <init>(Ljava/lang/String;I)V
.locals 0
.annotation system Ldalvik/annotation/Signature;
value = {
"()V"
}
.end annotation
invoke-direct {p0, p1, p2}, Ljava/lang/Enum;-><init>(Ljava/lang/String;I)V
return-void
.end method
.method public static valueOf(Ljava/lang/String;)Lx/a/b2/b$b;
.locals 1
const-class v0, Lx/a/b2/b$b;
invoke-static {v0, p0}, Ljava/lang/Enum;->valueOf(Ljava/lang/Class;Ljava/lang/String;)Ljava/lang/Enum;
move-result-object p0
check-cast p0, Lx/a/b2/b$b;
return-object p0
.end method
.method public static values()[Lx/a/b2/b$b;
.locals 1
sget-object v0, Lx/a/b2/b$b;->i:[Lx/a/b2/b$b;
invoke-virtual {v0}, [Lx/a/b2/b$b;->clone()Ljava/lang/Object;
move-result-object v0
check-cast v0, [Lx/a/b2/b$b;
return-object v0
.end method

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,121 @@
.class public final Lx/a/b2/c;
.super Lx/a/b2/d;
.source "Dispatcher.kt"
# static fields
.field public static final i:Lx/a/x;
.field public static final j:Lx/a/b2/c;
# direct methods
.method public static constructor <clinit>()V
.locals 5
new-instance v0, Lx/a/b2/c;
invoke-direct {v0}, Lx/a/b2/c;-><init>()V
sput-object v0, Lx/a/b2/c;->j:Lx/a/b2/c;
sget v1, Lx/a/a2/x;->a:I
const/16 v2, 0x40
if-ge v2, v1, :cond_0
goto :goto_0
:cond_0
const/16 v1, 0x40
:goto_0
const/16 v2, 0xc
const/4 v3, 0x0
const-string v4, "kotlinx.coroutines.io.parallelism"
invoke-static {v4, v1, v3, v3, v2}, Lx/a/a2/w;->a(Ljava/lang/String;IIII)I
move-result v1
if-lez v1, :cond_1
const/4 v3, 0x1
:cond_1
if-eqz v3, :cond_2
new-instance v2, Lx/a/b2/f;
sget-object v3, Lx/a/b2/l;->e:Lx/a/b2/l;
invoke-direct {v2, v0, v1, v3}, Lx/a/b2/f;-><init>(Lx/a/b2/d;ILx/a/b2/l;)V
sput-object v2, Lx/a/b2/c;->i:Lx/a/x;
return-void
:cond_2
const-string v0, "Expected positive parallelism level, but have "
invoke-static {v0, v1}, Le/e/b/a/a;->a(Ljava/lang/String;I)Ljava/lang/String;
move-result-object v0
new-instance v1, Ljava/lang/IllegalArgumentException;
invoke-virtual {v0}, Ljava/lang/Object;->toString()Ljava/lang/String;
move-result-object v0
invoke-direct {v1, v0}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw v1
.end method
.method public constructor <init>()V
.locals 3
const/4 v0, 0x0
const/4 v1, 0x0
const/4 v2, 0x7
invoke-direct {p0, v0, v0, v1, v2}, Lx/a/b2/d;-><init>(IILjava/lang/String;I)V
return-void
.end method
# virtual methods
.method public close()V
.locals 2
new-instance v0, Ljava/lang/UnsupportedOperationException;
const-string v1, "DefaultDispatcher cannot be closed"
invoke-direct {v0, v1}, Ljava/lang/UnsupportedOperationException;-><init>(Ljava/lang/String;)V
throw v0
.end method
.method public final e()Lx/a/x;
.locals 1
sget-object v0, Lx/a/b2/c;->i:Lx/a/x;
return-object v0
.end method
.method public toString()Ljava/lang/String;
.locals 1
const-string v0, "DefaultDispatcher"
return-object v0
.end method

View file

@ -0,0 +1,165 @@
.class public Lx/a/b2/d;
.super Lx/a/u0;
.source "Dispatcher.kt"
# instance fields
.field public d:Lx/a/b2/b;
.field public final e:I
.field public final f:I
.field public final g:J
.field public final h:Ljava/lang/String;
# direct methods
.method public synthetic constructor <init>(IILjava/lang/String;I)V
.locals 8
and-int/lit8 v0, p4, 0x1
if-eqz v0, :cond_0
sget p1, Lx/a/b2/m;->c:I
:cond_0
and-int/lit8 v0, p4, 0x2
if-eqz v0, :cond_1
sget p2, Lx/a/b2/m;->d:I
:cond_1
and-int/lit8 p4, p4, 0x4
if-eqz p4, :cond_2
const-string p3, "DefaultDispatcher"
:cond_2
if-eqz p3, :cond_3
sget-wide v0, Lx/a/b2/m;->e:J
invoke-direct {p0}, Lx/a/u0;-><init>()V
iput p1, p0, Lx/a/b2/d;->e:I
iput p2, p0, Lx/a/b2/d;->f:I
iput-wide v0, p0, Lx/a/b2/d;->g:J
iput-object p3, p0, Lx/a/b2/d;->h:Ljava/lang/String;
new-instance p1, Lx/a/b2/b;
iget v3, p0, Lx/a/b2/d;->e:I
iget v4, p0, Lx/a/b2/d;->f:I
iget-wide v5, p0, Lx/a/b2/d;->g:J
iget-object v7, p0, Lx/a/b2/d;->h:Ljava/lang/String;
move-object v2, p1
invoke-direct/range {v2 .. v7}, Lx/a/b2/b;-><init>(IIJLjava/lang/String;)V
iput-object p1, p0, Lx/a/b2/d;->d:Lx/a/b2/b;
return-void
:cond_3
const-string p1, "schedulerName"
invoke-static {p1}, Lw/u/b/j;->a(Ljava/lang/String;)V
const/4 p1, 0x0
throw p1
.end method
# virtual methods
.method public final a(Ljava/lang/Runnable;Lx/a/b2/j;Z)V
.locals 1
const-string v0, "block"
invoke-static {p1, v0}, Lw/u/b/j;->checkParameterIsNotNull(Ljava/lang/Object;Ljava/lang/String;)V
const-string v0, "context"
invoke-static {p2, v0}, Lw/u/b/j;->checkParameterIsNotNull(Ljava/lang/Object;Ljava/lang/String;)V
:try_start_0
iget-object v0, p0, Lx/a/b2/d;->d:Lx/a/b2/b;
invoke-virtual {v0, p1, p2, p3}, Lx/a/b2/b;->a(Ljava/lang/Runnable;Lx/a/b2/j;Z)V
:try_end_0
.catch Ljava/util/concurrent/RejectedExecutionException; {:try_start_0 .. :try_end_0} :catch_0
goto :goto_0
:catch_0
sget-object p3, Lx/a/f0;->j:Lx/a/f0;
iget-object v0, p0, Lx/a/b2/d;->d:Lx/a/b2/b;
invoke-virtual {v0, p1, p2}, Lx/a/b2/b;->a(Ljava/lang/Runnable;Lx/a/b2/j;)Lx/a/b2/i;
move-result-object p1
invoke-virtual {p3, p1}, Lx/a/s0;->a(Ljava/lang/Runnable;)V
:goto_0
return-void
.end method
.method public a(Lkotlin/coroutines/CoroutineContext;Ljava/lang/Runnable;)V
.locals 3
const/4 v0, 0x0
if-eqz p1, :cond_1
if-eqz p2, :cond_0
:try_start_0
iget-object p1, p0, Lx/a/b2/d;->d:Lx/a/b2/b;
const/4 v1, 0x0
const/4 v2, 0x6
invoke-static {p1, p2, v0, v1, v2}, Lx/a/b2/b;->a(Lx/a/b2/b;Ljava/lang/Runnable;Lx/a/b2/j;ZI)V
:try_end_0
.catch Ljava/util/concurrent/RejectedExecutionException; {:try_start_0 .. :try_end_0} :catch_0
goto :goto_0
:catch_0
sget-object p1, Lx/a/f0;->j:Lx/a/f0;
invoke-virtual {p1, p2}, Lx/a/s0;->a(Ljava/lang/Runnable;)V
:goto_0
return-void
:cond_0
const-string p1, "block"
invoke-static {p1}, Lw/u/b/j;->a(Ljava/lang/String;)V
throw v0
:cond_1
const-string p1, "context"
invoke-static {p1}, Lw/u/b/j;->a(Ljava/lang/String;)V
throw v0
.end method

View file

@ -0,0 +1,219 @@
.class public Lx/a/b2/e;
.super Lx/a/a2/o;
.source "Tasks.kt"
# annotations
.annotation system Ldalvik/annotation/Signature;
value = {
"Lx/a/a2/o<",
"Lx/a/b2/i;",
">;"
}
.end annotation
# direct methods
.method public constructor <init>()V
.locals 1
const/4 v0, 0x0
invoke-direct {p0, v0}, Lx/a/a2/o;-><init>(Z)V
return-void
.end method
# virtual methods
.method public final a(Lx/a/b2/l;)Lx/a/b2/i;
.locals 11
const/4 v0, 0x0
if-eqz p1, :cond_b
:goto_0
iget-object v1, p0, Lx/a/a2/o;->_cur$internal:Ljava/lang/Object;
check-cast v1, Lx/a/a2/p;
:cond_0
:goto_1
iget-wide v4, v1, Lx/a/a2/p;->_state$internal:J
const-wide/high16 v2, 0x1000000000000000L
and-long/2addr v2, v4
const-wide/16 v6, 0x0
cmp-long v8, v2, v6
if-eqz v8, :cond_1
sget-object v2, Lx/a/a2/p;->g:Lx/a/a2/v;
goto/16 :goto_5
:cond_1
sget-object v2, Lx/a/a2/p;->h:Lx/a/a2/p$a;
const-wide/32 v2, 0x3fffffff
and-long/2addr v2, v4
const/4 v6, 0x0
shr-long/2addr v2, v6
long-to-int v8, v2
const-wide v2, 0xfffffffc0000000L
and-long/2addr v2, v4
const/16 v7, 0x1e
shr-long/2addr v2, v7
long-to-int v3, v2
iget v2, v1, Lx/a/a2/p;->a:I
and-int/2addr v3, v2
and-int v7, v8, v2
if-ne v3, v7, :cond_2
:goto_2
move-object v2, v0
goto :goto_5
:cond_2
iget-object v3, v1, Lx/a/a2/p;->b:Ljava/util/concurrent/atomic/AtomicReferenceArray;
and-int/2addr v2, v8
invoke-virtual {v3, v2}, Ljava/util/concurrent/atomic/AtomicReferenceArray;->get(I)Ljava/lang/Object;
move-result-object v9
if-nez v9, :cond_3
iget-boolean v2, v1, Lx/a/a2/p;->d:Z
if-eqz v2, :cond_0
goto :goto_2
:cond_3
instance-of v2, v9, Lx/a/a2/p$b;
if-eqz v2, :cond_4
goto :goto_2
:cond_4
move-object v2, v9
check-cast v2, Lx/a/b2/i;
invoke-virtual {v2}, Lx/a/b2/i;->a()Lx/a/b2/l;
move-result-object v2
if-ne v2, p1, :cond_5
const/4 v6, 0x1
:cond_5
if-nez v6, :cond_6
goto :goto_2
:cond_6
add-int/lit8 v2, v8, 0x1
const v3, 0x3fffffff # 1.9999999f
and-int v10, v2, v3
sget-object v2, Lx/a/a2/p;->f:Ljava/util/concurrent/atomic/AtomicLongFieldUpdater;
sget-object v3, Lx/a/a2/p;->h:Lx/a/a2/p$a;
invoke-virtual {v3, v4, v5, v10}, Lx/a/a2/p$a;->a(JI)J
move-result-wide v6
move-object v3, v1
invoke-virtual/range {v2 .. v7}, Ljava/util/concurrent/atomic/AtomicLongFieldUpdater;->compareAndSet(Ljava/lang/Object;JJ)Z
move-result v2
if-eqz v2, :cond_7
iget-object v2, v1, Lx/a/a2/p;->b:Ljava/util/concurrent/atomic/AtomicReferenceArray;
iget v3, v1, Lx/a/a2/p;->a:I
and-int/2addr v3, v8
invoke-virtual {v2, v3, v0}, Ljava/util/concurrent/atomic/AtomicReferenceArray;->set(ILjava/lang/Object;)V
goto :goto_4
:cond_7
iget-boolean v2, v1, Lx/a/a2/p;->d:Z
if-nez v2, :cond_8
goto :goto_1
:cond_8
move-object v2, v1
:goto_3
invoke-static {v2, v8, v10}, Lx/a/a2/p;->a(Lx/a/a2/p;II)Lx/a/a2/p;
move-result-object v2
if-eqz v2, :cond_9
goto :goto_3
:cond_9
:goto_4
move-object v2, v9
:goto_5
sget-object v3, Lx/a/a2/p;->g:Lx/a/a2/v;
if-eq v2, v3, :cond_a
check-cast v2, Lx/a/b2/i;
return-object v2
:cond_a
sget-object v2, Lx/a/a2/o;->a:Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;
invoke-virtual {v1}, Lx/a/a2/p;->c()Lx/a/a2/p;
move-result-object v3
invoke-virtual {v2, p0, v1, v3}, Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;->compareAndSet(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Z
goto/16 :goto_0
:cond_b
const-string p1, "mode"
invoke-static {p1}, Lw/u/b/j;->a(Ljava/lang/String;)V
throw v0
.end method

View file

@ -0,0 +1,298 @@
.class public final Lx/a/b2/f;
.super Lx/a/u0;
.source "Dispatcher.kt"
# interfaces
.implements Lx/a/b2/j;
.implements Ljava/util/concurrent/Executor;
# static fields
.field public static final h:Ljava/util/concurrent/atomic/AtomicIntegerFieldUpdater;
# instance fields
.field public final d:Ljava/util/concurrent/ConcurrentLinkedQueue;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/concurrent/ConcurrentLinkedQueue<",
"Ljava/lang/Runnable;",
">;"
}
.end annotation
.end field
.field public final e:Lx/a/b2/d;
.field public final f:I
.field public final g:Lx/a/b2/l;
.field public volatile inFlightTasks:I
# direct methods
.method public static constructor <clinit>()V
.locals 2
const-class v0, Lx/a/b2/f;
const-string v1, "inFlightTasks"
invoke-static {v0, v1}, Ljava/util/concurrent/atomic/AtomicIntegerFieldUpdater;->newUpdater(Ljava/lang/Class;Ljava/lang/String;)Ljava/util/concurrent/atomic/AtomicIntegerFieldUpdater;
move-result-object v0
sput-object v0, Lx/a/b2/f;->h:Ljava/util/concurrent/atomic/AtomicIntegerFieldUpdater;
return-void
.end method
.method public constructor <init>(Lx/a/b2/d;ILx/a/b2/l;)V
.locals 1
const/4 v0, 0x0
if-eqz p1, :cond_1
if-eqz p3, :cond_0
invoke-direct {p0}, Lx/a/u0;-><init>()V
iput-object p1, p0, Lx/a/b2/f;->e:Lx/a/b2/d;
iput p2, p0, Lx/a/b2/f;->f:I
iput-object p3, p0, Lx/a/b2/f;->g:Lx/a/b2/l;
new-instance p1, Ljava/util/concurrent/ConcurrentLinkedQueue;
invoke-direct {p1}, Ljava/util/concurrent/ConcurrentLinkedQueue;-><init>()V
iput-object p1, p0, Lx/a/b2/f;->d:Ljava/util/concurrent/ConcurrentLinkedQueue;
const/4 p1, 0x0
iput p1, p0, Lx/a/b2/f;->inFlightTasks:I
return-void
:cond_0
const-string p1, "taskMode"
invoke-static {p1}, Lw/u/b/j;->a(Ljava/lang/String;)V
throw v0
:cond_1
const-string p1, "dispatcher"
invoke-static {p1}, Lw/u/b/j;->a(Ljava/lang/String;)V
throw v0
.end method
# virtual methods
.method public final a(Ljava/lang/Runnable;Z)V
.locals 2
:goto_0
sget-object v0, Lx/a/b2/f;->h:Ljava/util/concurrent/atomic/AtomicIntegerFieldUpdater;
invoke-virtual {v0, p0}, Ljava/util/concurrent/atomic/AtomicIntegerFieldUpdater;->incrementAndGet(Ljava/lang/Object;)I
move-result v0
iget v1, p0, Lx/a/b2/f;->f:I
if-gt v0, v1, :cond_0
iget-object v0, p0, Lx/a/b2/f;->e:Lx/a/b2/d;
invoke-virtual {v0, p1, p0, p2}, Lx/a/b2/d;->a(Ljava/lang/Runnable;Lx/a/b2/j;Z)V
return-void
:cond_0
iget-object v0, p0, Lx/a/b2/f;->d:Ljava/util/concurrent/ConcurrentLinkedQueue;
invoke-virtual {v0, p1}, Ljava/util/concurrent/ConcurrentLinkedQueue;->add(Ljava/lang/Object;)Z
sget-object p1, Lx/a/b2/f;->h:Ljava/util/concurrent/atomic/AtomicIntegerFieldUpdater;
invoke-virtual {p1, p0}, Ljava/util/concurrent/atomic/AtomicIntegerFieldUpdater;->decrementAndGet(Ljava/lang/Object;)I
move-result p1
iget v0, p0, Lx/a/b2/f;->f:I
if-lt p1, v0, :cond_1
return-void
:cond_1
iget-object p1, p0, Lx/a/b2/f;->d:Ljava/util/concurrent/ConcurrentLinkedQueue;
invoke-virtual {p1}, Ljava/util/concurrent/ConcurrentLinkedQueue;->poll()Ljava/lang/Object;
move-result-object p1
check-cast p1, Ljava/lang/Runnable;
if-eqz p1, :cond_2
goto :goto_0
:cond_2
return-void
.end method
.method public a(Lkotlin/coroutines/CoroutineContext;Ljava/lang/Runnable;)V
.locals 1
const/4 v0, 0x0
if-eqz p1, :cond_1
if-eqz p2, :cond_0
const/4 p1, 0x0
invoke-virtual {p0, p2, p1}, Lx/a/b2/f;->a(Ljava/lang/Runnable;Z)V
return-void
:cond_0
const-string p1, "block"
invoke-static {p1}, Lw/u/b/j;->a(Ljava/lang/String;)V
throw v0
:cond_1
const-string p1, "context"
invoke-static {p1}, Lw/u/b/j;->a(Ljava/lang/String;)V
throw v0
.end method
.method public c()V
.locals 3
iget-object v0, p0, Lx/a/b2/f;->d:Ljava/util/concurrent/ConcurrentLinkedQueue;
invoke-virtual {v0}, Ljava/util/concurrent/ConcurrentLinkedQueue;->poll()Ljava/lang/Object;
move-result-object v0
check-cast v0, Ljava/lang/Runnable;
const/4 v1, 0x1
if-eqz v0, :cond_0
iget-object v2, p0, Lx/a/b2/f;->e:Lx/a/b2/d;
invoke-virtual {v2, v0, p0, v1}, Lx/a/b2/d;->a(Ljava/lang/Runnable;Lx/a/b2/j;Z)V
return-void
:cond_0
sget-object v0, Lx/a/b2/f;->h:Ljava/util/concurrent/atomic/AtomicIntegerFieldUpdater;
invoke-virtual {v0, p0}, Ljava/util/concurrent/atomic/AtomicIntegerFieldUpdater;->decrementAndGet(Ljava/lang/Object;)I
iget-object v0, p0, Lx/a/b2/f;->d:Ljava/util/concurrent/ConcurrentLinkedQueue;
invoke-virtual {v0}, Ljava/util/concurrent/ConcurrentLinkedQueue;->poll()Ljava/lang/Object;
move-result-object v0
check-cast v0, Ljava/lang/Runnable;
if-eqz v0, :cond_1
invoke-virtual {p0, v0, v1}, Lx/a/b2/f;->a(Ljava/lang/Runnable;Z)V
:cond_1
return-void
.end method
.method public close()V
.locals 2
new-instance v0, Ljava/lang/IllegalStateException;
const-string v1, "Close cannot be invoked on LimitingBlockingDispatcher"
invoke-virtual {v1}, Ljava/lang/Object;->toString()Ljava/lang/String;
move-result-object v1
invoke-direct {v0, v1}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
throw v0
.end method
.method public d()Lx/a/b2/l;
.locals 1
iget-object v0, p0, Lx/a/b2/f;->g:Lx/a/b2/l;
return-object v0
.end method
.method public execute(Ljava/lang/Runnable;)V
.locals 1
if-eqz p1, :cond_0
const/4 v0, 0x0
invoke-virtual {p0, p1, v0}, Lx/a/b2/f;->a(Ljava/lang/Runnable;Z)V
return-void
:cond_0
const-string p1, "command"
invoke-static {p1}, Lw/u/b/j;->a(Ljava/lang/String;)V
const/4 p1, 0x0
throw p1
.end method
.method public toString()Ljava/lang/String;
.locals 2
new-instance v0, Ljava/lang/StringBuilder;
invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
invoke-super {p0}, Lx/a/x;->toString()Ljava/lang/String;
move-result-object v1
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string v1, "[dispatcher = "
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-object v1, p0, Lx/a/b2/f;->e:Lx/a/b2/d;
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
const/16 v1, 0x5d
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
return-object v0
.end method

View file

@ -0,0 +1,41 @@
.class public final Lx/a/b2/g;
.super Lx/a/b2/n;
.source "Tasks.kt"
# static fields
.field public static final a:Lx/a/b2/g;
# direct methods
.method public static constructor <clinit>()V
.locals 1
new-instance v0, Lx/a/b2/g;
invoke-direct {v0}, Lx/a/b2/g;-><init>()V
sput-object v0, Lx/a/b2/g;->a:Lx/a/b2/g;
return-void
.end method
.method public constructor <init>()V
.locals 0
invoke-direct {p0}, Lx/a/b2/n;-><init>()V
return-void
.end method
# virtual methods
.method public a()J
.locals 2
invoke-static {}, Ljava/lang/System;->nanoTime()J
move-result-wide v0
return-wide v0
.end method

View file

@ -0,0 +1,54 @@
.class public final Lx/a/b2/h;
.super Ljava/lang/Object;
.source "Tasks.kt"
# interfaces
.implements Lx/a/b2/j;
# static fields
.field public static final d:Lx/a/b2/l;
.field public static final e:Lx/a/b2/h;
# direct methods
.method public static constructor <clinit>()V
.locals 1
new-instance v0, Lx/a/b2/h;
invoke-direct {v0}, Lx/a/b2/h;-><init>()V
sput-object v0, Lx/a/b2/h;->e:Lx/a/b2/h;
sget-object v0, Lx/a/b2/l;->d:Lx/a/b2/l;
sput-object v0, Lx/a/b2/h;->d:Lx/a/b2/l;
return-void
.end method
.method public constructor <init>()V
.locals 0
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
# virtual methods
.method public c()V
.locals 0
return-void
.end method
.method public d()Lx/a/b2/l;
.locals 1
sget-object v0, Lx/a/b2/h;->d:Lx/a/b2/l;
return-object v0
.end method

View file

@ -0,0 +1,78 @@
.class public abstract Lx/a/b2/i;
.super Ljava/lang/Object;
.source "Tasks.kt"
# interfaces
.implements Ljava/lang/Runnable;
# instance fields
.field public d:J
.field public e:Lx/a/b2/j;
# direct methods
.method public constructor <init>()V
.locals 3
sget-object v0, Lx/a/b2/h;->e:Lx/a/b2/h;
if-eqz v0, :cond_0
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
const-wide/16 v1, 0x0
iput-wide v1, p0, Lx/a/b2/i;->d:J
iput-object v0, p0, Lx/a/b2/i;->e:Lx/a/b2/j;
return-void
:cond_0
const-string v0, "taskContext"
invoke-static {v0}, Lw/u/b/j;->a(Ljava/lang/String;)V
const/4 v0, 0x0
throw v0
.end method
.method public constructor <init>(JLx/a/b2/j;)V
.locals 0
if-eqz p3, :cond_0
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
iput-wide p1, p0, Lx/a/b2/i;->d:J
iput-object p3, p0, Lx/a/b2/i;->e:Lx/a/b2/j;
return-void
:cond_0
const-string p1, "taskContext"
invoke-static {p1}, Lw/u/b/j;->a(Ljava/lang/String;)V
const/4 p1, 0x0
throw p1
.end method
# virtual methods
.method public final a()Lx/a/b2/l;
.locals 1
iget-object v0, p0, Lx/a/b2/i;->e:Lx/a/b2/j;
invoke-interface {v0}, Lx/a/b2/j;->d()Lx/a/b2/l;
move-result-object v0
return-object v0
.end method

View file

@ -0,0 +1,11 @@
.class public interface abstract Lx/a/b2/j;
.super Ljava/lang/Object;
.source "Tasks.kt"
# virtual methods
.method public abstract c()V
.end method
.method public abstract d()Lx/a/b2/l;
.end method

View file

@ -0,0 +1,121 @@
.class public final Lx/a/b2/k;
.super Lx/a/b2/i;
.source "Tasks.kt"
# instance fields
.field public final f:Ljava/lang/Runnable;
# direct methods
.method public constructor <init>(Ljava/lang/Runnable;JLx/a/b2/j;)V
.locals 1
const/4 v0, 0x0
if-eqz p1, :cond_1
if-eqz p4, :cond_0
invoke-direct {p0, p2, p3, p4}, Lx/a/b2/i;-><init>(JLx/a/b2/j;)V
iput-object p1, p0, Lx/a/b2/k;->f:Ljava/lang/Runnable;
return-void
:cond_0
const-string p1, "taskContext"
invoke-static {p1}, Lw/u/b/j;->a(Ljava/lang/String;)V
throw v0
:cond_1
const-string p1, "block"
invoke-static {p1}, Lw/u/b/j;->a(Ljava/lang/String;)V
throw v0
.end method
# virtual methods
.method public run()V
.locals 2
:try_start_0
iget-object v0, p0, Lx/a/b2/k;->f:Ljava/lang/Runnable;
invoke-interface {v0}, Ljava/lang/Runnable;->run()V
:try_end_0
.catchall {:try_start_0 .. :try_end_0} :catchall_0
iget-object v0, p0, Lx/a/b2/i;->e:Lx/a/b2/j;
invoke-interface {v0}, Lx/a/b2/j;->c()V
return-void
:catchall_0
move-exception v0
iget-object v1, p0, Lx/a/b2/i;->e:Lx/a/b2/j;
invoke-interface {v1}, Lx/a/b2/j;->c()V
throw v0
.end method
.method public toString()Ljava/lang/String;
.locals 4
const-string v0, "Task["
invoke-static {v0}, Le/e/b/a/a;->a(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v0
iget-object v1, p0, Lx/a/b2/k;->f:Ljava/lang/Runnable;
invoke-static {v1}, Lx/a/e0;->a(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/16 v1, 0x40
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
iget-object v1, p0, Lx/a/b2/k;->f:Ljava/lang/Runnable;
invoke-static {v1}, Lx/a/e0;->b(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, ", "
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-wide v2, p0, Lx/a/b2/i;->d:J
invoke-virtual {v0, v2, v3}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-object v1, p0, Lx/a/b2/i;->e:Lx/a/b2/j;
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
const/16 v1, 0x5d
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
return-object v0
.end method

View file

@ -0,0 +1,100 @@
.class public final enum Lx/a/b2/l;
.super Ljava/lang/Enum;
.source "Tasks.kt"
# annotations
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/lang/Enum<",
"Lx/a/b2/l;",
">;"
}
.end annotation
# static fields
.field public static final enum d:Lx/a/b2/l;
.field public static final enum e:Lx/a/b2/l;
.field public static final synthetic f:[Lx/a/b2/l;
# direct methods
.method public static constructor <clinit>()V
.locals 4
const/4 v0, 0x2
new-array v0, v0, [Lx/a/b2/l;
new-instance v1, Lx/a/b2/l;
const/4 v2, 0x0
const-string v3, "NON_BLOCKING"
invoke-direct {v1, v3, v2}, Lx/a/b2/l;-><init>(Ljava/lang/String;I)V
sput-object v1, Lx/a/b2/l;->d:Lx/a/b2/l;
aput-object v1, v0, v2
new-instance v1, Lx/a/b2/l;
const/4 v2, 0x1
const-string v3, "PROBABLY_BLOCKING"
invoke-direct {v1, v3, v2}, Lx/a/b2/l;-><init>(Ljava/lang/String;I)V
sput-object v1, Lx/a/b2/l;->e:Lx/a/b2/l;
aput-object v1, v0, v2
sput-object v0, Lx/a/b2/l;->f:[Lx/a/b2/l;
return-void
.end method
.method public constructor <init>(Ljava/lang/String;I)V
.locals 0
.annotation system Ldalvik/annotation/Signature;
value = {
"()V"
}
.end annotation
invoke-direct {p0, p1, p2}, Ljava/lang/Enum;-><init>(Ljava/lang/String;I)V
return-void
.end method
.method public static valueOf(Ljava/lang/String;)Lx/a/b2/l;
.locals 1
const-class v0, Lx/a/b2/l;
invoke-static {v0, p0}, Ljava/lang/Enum;->valueOf(Ljava/lang/Class;Ljava/lang/String;)Ljava/lang/Enum;
move-result-object p0
check-cast p0, Lx/a/b2/l;
return-object p0
.end method
.method public static values()[Lx/a/b2/l;
.locals 1
sget-object v0, Lx/a/b2/l;->f:[Lx/a/b2/l;
invoke-virtual {v0}, [Lx/a/b2/l;->clone()Ljava/lang/Object;
move-result-object v0
check-cast v0, [Lx/a/b2/l;
return-object v0
.end method

View file

@ -0,0 +1,151 @@
.class public final Lx/a/b2/m;
.super Ljava/lang/Object;
.source "Tasks.kt"
# static fields
.field public static final a:J
.field public static final b:I
.field public static final c:I
.field public static final d:I
.field public static final e:J
.field public static f:Lx/a/b2/n;
# direct methods
.method public static constructor <clinit>()V
.locals 10
const-string v0, "kotlinx.coroutines.scheduler.resolution.ns"
const-wide/32 v1, 0x186a0
const-wide/16 v3, 0x0
const-wide/16 v5, 0x0
const/16 v7, 0xc
const/4 v8, 0x0
invoke-static/range {v0 .. v8}, Lx/a/a2/w;->a(Ljava/lang/String;JJJILjava/lang/Object;)J
move-result-wide v0
sput-wide v0, Lx/a/b2/m;->a:J
const-string v2, "kotlinx.coroutines.scheduler.offload.threshold"
const/16 v3, 0x60
const/4 v4, 0x0
const/16 v5, 0x80
const/4 v6, 0x4
const/4 v7, 0x0
invoke-static/range {v2 .. v7}, Lx/a/a2/w;->a(Ljava/lang/String;IIIILjava/lang/Object;)I
move-result v0
sput v0, Lx/a/b2/m;->b:I
const-string v1, "kotlinx.coroutines.scheduler.blocking.parallelism"
const/16 v2, 0x10
const/4 v3, 0x0
const/16 v5, 0xc
const/4 v6, 0x0
invoke-static/range {v1 .. v6}, Lx/a/a2/w;->a(Ljava/lang/String;IIIILjava/lang/Object;)I
invoke-static {}, Lx/a/a2/w;->a()I
move-result v0
const/4 v1, 0x2
invoke-static {v0, v1}, Lw/x/c;->coerceAtLeast(II)I
move-result v3
const-string v2, "kotlinx.coroutines.scheduler.core.pool.size"
const/4 v4, 0x1
const/4 v5, 0x0
const/16 v6, 0x8
invoke-static/range {v2 .. v7}, Lx/a/a2/w;->a(Ljava/lang/String;IIIILjava/lang/Object;)I
move-result v0
sput v0, Lx/a/b2/m;->c:I
invoke-static {}, Lx/a/a2/w;->a()I
move-result v0
mul-int/lit16 v0, v0, 0x80
sget v1, Lx/a/b2/m;->c:I
const v2, 0x1ffffe
invoke-static {v0, v1, v2}, Lw/x/c;->coerceIn(III)I
move-result v4
const-string v3, "kotlinx.coroutines.scheduler.max.pool.size"
const v6, 0x1ffffe
const/4 v7, 0x4
invoke-static/range {v3 .. v8}, Lx/a/a2/w;->a(Ljava/lang/String;IIIILjava/lang/Object;)I
move-result v0
sput v0, Lx/a/b2/m;->d:I
sget-object v0, Ljava/util/concurrent/TimeUnit;->SECONDS:Ljava/util/concurrent/TimeUnit;
const-string v1, "kotlinx.coroutines.scheduler.keep.alive.sec"
const-wide/16 v2, 0x5
const-wide/16 v4, 0x0
const-wide/16 v6, 0x0
const/16 v8, 0xc
const/4 v9, 0x0
invoke-static/range {v1 .. v9}, Lx/a/a2/w;->a(Ljava/lang/String;JJJILjava/lang/Object;)J
move-result-wide v1
invoke-virtual {v0, v1, v2}, Ljava/util/concurrent/TimeUnit;->toNanos(J)J
move-result-wide v0
sput-wide v0, Lx/a/b2/m;->e:J
sget-object v0, Lx/a/b2/g;->a:Lx/a/b2/g;
sput-object v0, Lx/a/b2/m;->f:Lx/a/b2/n;
return-void
.end method

View file

@ -0,0 +1,18 @@
.class public abstract Lx/a/b2/n;
.super Ljava/lang/Object;
.source "Tasks.kt"
# direct methods
.method public constructor <init>()V
.locals 0
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
# virtual methods
.method public abstract a()J
.end method

View file

@ -0,0 +1,664 @@
.class public final Lx/a/b2/o;
.super Ljava/lang/Object;
.source "WorkQueue.kt"
# static fields
.field public static final b:Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;
.field public static final c:Ljava/util/concurrent/atomic/AtomicIntegerFieldUpdater;
.field public static final d:Ljava/util/concurrent/atomic/AtomicIntegerFieldUpdater;
# instance fields
.field public final a:Ljava/util/concurrent/atomic/AtomicReferenceArray;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/concurrent/atomic/AtomicReferenceArray<",
"Lx/a/b2/i;",
">;"
}
.end annotation
.end field
.field public volatile consumerIndex:I
.field public volatile lastScheduledTask:Ljava/lang/Object;
.field public volatile producerIndex:I
# direct methods
.method public static constructor <clinit>()V
.locals 3
const-class v0, Lx/a/b2/o;
const-class v1, Ljava/lang/Object;
const-string v2, "lastScheduledTask"
invoke-static {v0, v1, v2}, Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;->newUpdater(Ljava/lang/Class;Ljava/lang/Class;Ljava/lang/String;)Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;
move-result-object v1
sput-object v1, Lx/a/b2/o;->b:Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;
const-string v1, "producerIndex"
invoke-static {v0, v1}, Ljava/util/concurrent/atomic/AtomicIntegerFieldUpdater;->newUpdater(Ljava/lang/Class;Ljava/lang/String;)Ljava/util/concurrent/atomic/AtomicIntegerFieldUpdater;
move-result-object v1
sput-object v1, Lx/a/b2/o;->c:Ljava/util/concurrent/atomic/AtomicIntegerFieldUpdater;
const-string v1, "consumerIndex"
invoke-static {v0, v1}, Ljava/util/concurrent/atomic/AtomicIntegerFieldUpdater;->newUpdater(Ljava/lang/Class;Ljava/lang/String;)Ljava/util/concurrent/atomic/AtomicIntegerFieldUpdater;
move-result-object v0
sput-object v0, Lx/a/b2/o;->d:Ljava/util/concurrent/atomic/AtomicIntegerFieldUpdater;
return-void
.end method
.method public constructor <init>()V
.locals 2
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
new-instance v0, Ljava/util/concurrent/atomic/AtomicReferenceArray;
const/16 v1, 0x80
invoke-direct {v0, v1}, Ljava/util/concurrent/atomic/AtomicReferenceArray;-><init>(I)V
iput-object v0, p0, Lx/a/b2/o;->a:Ljava/util/concurrent/atomic/AtomicReferenceArray;
const/4 v0, 0x0
iput-object v0, p0, Lx/a/b2/o;->lastScheduledTask:Ljava/lang/Object;
const/4 v0, 0x0
iput v0, p0, Lx/a/b2/o;->producerIndex:I
iput v0, p0, Lx/a/b2/o;->consumerIndex:I
return-void
.end method
# virtual methods
.method public final a()I
.locals 2
iget v0, p0, Lx/a/b2/o;->producerIndex:I
iget v1, p0, Lx/a/b2/o;->consumerIndex:I
sub-int/2addr v0, v1
return v0
.end method
.method public final a(Lx/a/b2/e;)V
.locals 5
const/4 v0, 0x0
if-eqz p1, :cond_3
sget-object v1, Lx/a/b2/o;->b:Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;
invoke-virtual {v1, p0, v0}, Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;->getAndSet(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v1
check-cast v1, Lx/a/b2/i;
if-eqz v1, :cond_0
invoke-virtual {p0, p1, v1}, Lx/a/b2/o;->a(Lx/a/b2/e;Lx/a/b2/i;)V
:cond_0
:goto_0
iget v1, p0, Lx/a/b2/o;->consumerIndex:I
iget v2, p0, Lx/a/b2/o;->producerIndex:I
sub-int v2, v1, v2
if-nez v2, :cond_1
move-object v1, v0
goto :goto_1
:cond_1
and-int/lit8 v2, v1, 0x7f
iget-object v3, p0, Lx/a/b2/o;->a:Ljava/util/concurrent/atomic/AtomicReferenceArray;
invoke-virtual {v3, v2}, Ljava/util/concurrent/atomic/AtomicReferenceArray;->get(I)Ljava/lang/Object;
move-result-object v3
check-cast v3, Lx/a/b2/i;
if-eqz v3, :cond_0
sget-object v3, Lx/a/b2/o;->d:Ljava/util/concurrent/atomic/AtomicIntegerFieldUpdater;
add-int/lit8 v4, v1, 0x1
invoke-virtual {v3, p0, v1, v4}, Ljava/util/concurrent/atomic/AtomicIntegerFieldUpdater;->compareAndSet(Ljava/lang/Object;II)Z
move-result v1
if-eqz v1, :cond_0
iget-object v1, p0, Lx/a/b2/o;->a:Ljava/util/concurrent/atomic/AtomicReferenceArray;
invoke-virtual {v1, v2, v0}, Ljava/util/concurrent/atomic/AtomicReferenceArray;->getAndSet(ILjava/lang/Object;)Ljava/lang/Object;
move-result-object v1
check-cast v1, Lx/a/b2/i;
:goto_1
if-eqz v1, :cond_2
invoke-virtual {p0, p1, v1}, Lx/a/b2/o;->a(Lx/a/b2/e;Lx/a/b2/i;)V
goto :goto_0
:cond_2
return-void
:cond_3
const-string p1, "globalQueue"
invoke-static {p1}, Lw/u/b/j;->a(Ljava/lang/String;)V
throw v0
.end method
.method public final a(Lx/a/b2/e;Lx/a/b2/i;)V
.locals 0
invoke-virtual {p1, p2}, Lx/a/a2/o;->a(Ljava/lang/Object;)Z
move-result p1
if-eqz p1, :cond_0
return-void
:cond_0
new-instance p1, Ljava/lang/IllegalStateException;
const-string p2, "GlobalQueue could not be closed yet"
invoke-virtual {p2}, Ljava/lang/Object;->toString()Ljava/lang/String;
move-result-object p2
invoke-direct {p1, p2}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
throw p1
.end method
.method public final a(Lx/a/b2/i;Lx/a/b2/e;)Z
.locals 1
const/4 v0, 0x0
if-eqz p1, :cond_2
if-eqz p2, :cond_1
sget-object v0, Lx/a/b2/o;->b:Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;
invoke-virtual {v0, p0, p1}, Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;->getAndSet(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
move-result-object p1
check-cast p1, Lx/a/b2/i;
if-eqz p1, :cond_0
invoke-virtual {p0, p1, p2}, Lx/a/b2/o;->b(Lx/a/b2/i;Lx/a/b2/e;)Z
move-result p1
return p1
:cond_0
const/4 p1, 0x1
return p1
:cond_1
const-string p1, "globalQueue"
invoke-static {p1}, Lw/u/b/j;->a(Ljava/lang/String;)V
throw v0
:cond_2
const-string p1, "task"
invoke-static {p1}, Lw/u/b/j;->a(Ljava/lang/String;)V
throw v0
.end method
.method public final a(Lx/a/b2/o;Lx/a/b2/e;)Z
.locals 18
move-object/from16 v0, p0
move-object/from16 v1, p1
move-object/from16 v2, p2
const/4 v3, 0x0
if-eqz v1, :cond_b
if-eqz v2, :cond_a
sget-object v4, Lx/a/b2/m;->f:Lx/a/b2/n;
invoke-virtual {v4}, Lx/a/b2/n;->a()J
move-result-wide v4
invoke-virtual/range {p1 .. p1}, Lx/a/b2/o;->a()I
move-result v6
const/4 v7, 0x0
const/4 v8, 0x1
if-nez v6, :cond_2
iget-object v6, v1, Lx/a/b2/o;->lastScheduledTask:Ljava/lang/Object;
check-cast v6, Lx/a/b2/i;
if-eqz v6, :cond_1
iget-wide v9, v6, Lx/a/b2/i;->d:J
sub-long/2addr v4, v9
sget-wide v9, Lx/a/b2/m;->a:J
cmp-long v11, v4, v9
if-gez v11, :cond_0
goto :goto_0
:cond_0
sget-object v4, Lx/a/b2/o;->b:Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;
invoke-virtual {v4, v1, v6, v3}, Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;->compareAndSet(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Z
move-result v1
if-eqz v1, :cond_1
invoke-virtual {v0, v6, v2}, Lx/a/b2/o;->a(Lx/a/b2/i;Lx/a/b2/e;)Z
const/4 v7, 0x1
:cond_1
:goto_0
return v7
:cond_2
div-int/lit8 v6, v6, 0x2
if-ge v6, v8, :cond_3
const/4 v6, 0x1
:cond_3
const/4 v9, 0x0
const/4 v10, 0x0
:goto_1
if-ge v9, v6, :cond_9
:cond_4
iget v11, v1, Lx/a/b2/o;->consumerIndex:I
iget v12, v1, Lx/a/b2/o;->producerIndex:I
sub-int v12, v11, v12
if-nez v12, :cond_5
:goto_2
move-object v11, v3
goto :goto_5
:cond_5
and-int/lit8 v12, v11, 0x7f
iget-object v13, v1, Lx/a/b2/o;->a:Ljava/util/concurrent/atomic/AtomicReferenceArray;
invoke-virtual {v13, v12}, Ljava/util/concurrent/atomic/AtomicReferenceArray;->get(I)Ljava/lang/Object;
move-result-object v13
check-cast v13, Lx/a/b2/i;
if-eqz v13, :cond_4
iget-wide v13, v13, Lx/a/b2/i;->d:J
sub-long v13, v4, v13
sget-wide v15, Lx/a/b2/m;->a:J
cmp-long v17, v13, v15
if-gez v17, :cond_7
invoke-virtual/range {p1 .. p1}, Lx/a/b2/o;->a()I
move-result v13
sget v14, Lx/a/b2/m;->b:I
if-le v13, v14, :cond_6
goto :goto_3
:cond_6
const/4 v13, 0x0
goto :goto_4
:cond_7
:goto_3
const/4 v13, 0x1
:goto_4
if-nez v13, :cond_8
goto :goto_2
:cond_8
sget-object v13, Lx/a/b2/o;->d:Ljava/util/concurrent/atomic/AtomicIntegerFieldUpdater;
add-int/lit8 v14, v11, 0x1
invoke-virtual {v13, v1, v11, v14}, Ljava/util/concurrent/atomic/AtomicIntegerFieldUpdater;->compareAndSet(Ljava/lang/Object;II)Z
move-result v11
if-eqz v11, :cond_4
iget-object v11, v1, Lx/a/b2/o;->a:Ljava/util/concurrent/atomic/AtomicReferenceArray;
invoke-virtual {v11, v12, v3}, Ljava/util/concurrent/atomic/AtomicReferenceArray;->getAndSet(ILjava/lang/Object;)Ljava/lang/Object;
move-result-object v11
check-cast v11, Lx/a/b2/i;
:goto_5
if-eqz v11, :cond_9
invoke-virtual {v0, v11, v2}, Lx/a/b2/o;->a(Lx/a/b2/i;Lx/a/b2/e;)Z
add-int/lit8 v9, v9, 0x1
const/4 v10, 0x1
goto :goto_1
:cond_9
return v10
:cond_a
const-string v1, "globalQueue"
invoke-static {v1}, Lw/u/b/j;->a(Ljava/lang/String;)V
throw v3
:cond_b
const-string v1, "victim"
invoke-static {v1}, Lw/u/b/j;->a(Ljava/lang/String;)V
throw v3
.end method
.method public final b()Lx/a/b2/i;
.locals 5
sget-object v0, Lx/a/b2/o;->b:Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;
const/4 v1, 0x0
invoke-virtual {v0, p0, v1}, Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;->getAndSet(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v0
check-cast v0, Lx/a/b2/i;
if-eqz v0, :cond_0
move-object v1, v0
goto :goto_0
:cond_0
iget v0, p0, Lx/a/b2/o;->consumerIndex:I
iget v2, p0, Lx/a/b2/o;->producerIndex:I
sub-int v2, v0, v2
if-nez v2, :cond_1
goto :goto_0
:cond_1
and-int/lit8 v2, v0, 0x7f
iget-object v3, p0, Lx/a/b2/o;->a:Ljava/util/concurrent/atomic/AtomicReferenceArray;
invoke-virtual {v3, v2}, Ljava/util/concurrent/atomic/AtomicReferenceArray;->get(I)Ljava/lang/Object;
move-result-object v3
check-cast v3, Lx/a/b2/i;
if-eqz v3, :cond_0
sget-object v3, Lx/a/b2/o;->d:Ljava/util/concurrent/atomic/AtomicIntegerFieldUpdater;
add-int/lit8 v4, v0, 0x1
invoke-virtual {v3, p0, v0, v4}, Ljava/util/concurrent/atomic/AtomicIntegerFieldUpdater;->compareAndSet(Ljava/lang/Object;II)Z
move-result v0
if-eqz v0, :cond_0
iget-object v0, p0, Lx/a/b2/o;->a:Ljava/util/concurrent/atomic/AtomicReferenceArray;
invoke-virtual {v0, v2, v1}, Ljava/util/concurrent/atomic/AtomicReferenceArray;->getAndSet(ILjava/lang/Object;)Ljava/lang/Object;
move-result-object v0
move-object v1, v0
check-cast v1, Lx/a/b2/i;
:goto_0
return-object v1
.end method
.method public final b(Lx/a/b2/i;Lx/a/b2/e;)Z
.locals 9
const/4 v0, 0x0
if-eqz p1, :cond_8
if-eqz p2, :cond_7
const/4 v1, 0x0
const/4 v2, 0x1
const/4 v3, 0x1
:goto_0
invoke-virtual {p0}, Lx/a/b2/o;->a()I
move-result v4
const/16 v5, 0x7f
if-ne v4, v5, :cond_0
:goto_1
const/4 v4, 0x0
goto :goto_2
:cond_0
iget v4, p0, Lx/a/b2/o;->producerIndex:I
and-int/2addr v4, v5
iget-object v5, p0, Lx/a/b2/o;->a:Ljava/util/concurrent/atomic/AtomicReferenceArray;
invoke-virtual {v5, v4}, Ljava/util/concurrent/atomic/AtomicReferenceArray;->get(I)Ljava/lang/Object;
move-result-object v5
if-eqz v5, :cond_1
goto :goto_1
:cond_1
iget-object v5, p0, Lx/a/b2/o;->a:Ljava/util/concurrent/atomic/AtomicReferenceArray;
invoke-virtual {v5, v4, p1}, Ljava/util/concurrent/atomic/AtomicReferenceArray;->lazySet(ILjava/lang/Object;)V
sget-object v4, Lx/a/b2/o;->c:Ljava/util/concurrent/atomic/AtomicIntegerFieldUpdater;
invoke-virtual {v4, p0}, Ljava/util/concurrent/atomic/AtomicIntegerFieldUpdater;->incrementAndGet(Ljava/lang/Object;)I
const/4 v4, 0x1
:goto_2
if-nez v4, :cond_6
invoke-virtual {p0}, Lx/a/b2/o;->a()I
move-result v3
div-int/lit8 v3, v3, 0x2
if-ge v3, v2, :cond_2
const/4 v3, 0x1
:cond_2
const/4 v4, 0x0
:goto_3
if-ge v4, v3, :cond_5
:cond_3
iget v5, p0, Lx/a/b2/o;->consumerIndex:I
iget v6, p0, Lx/a/b2/o;->producerIndex:I
sub-int v6, v5, v6
if-nez v6, :cond_4
move-object v5, v0
goto :goto_4
:cond_4
and-int/lit8 v6, v5, 0x7f
iget-object v7, p0, Lx/a/b2/o;->a:Ljava/util/concurrent/atomic/AtomicReferenceArray;
invoke-virtual {v7, v6}, Ljava/util/concurrent/atomic/AtomicReferenceArray;->get(I)Ljava/lang/Object;
move-result-object v7
check-cast v7, Lx/a/b2/i;
if-eqz v7, :cond_3
sget-object v7, Lx/a/b2/o;->d:Ljava/util/concurrent/atomic/AtomicIntegerFieldUpdater;
add-int/lit8 v8, v5, 0x1
invoke-virtual {v7, p0, v5, v8}, Ljava/util/concurrent/atomic/AtomicIntegerFieldUpdater;->compareAndSet(Ljava/lang/Object;II)Z
move-result v5
if-eqz v5, :cond_3
iget-object v5, p0, Lx/a/b2/o;->a:Ljava/util/concurrent/atomic/AtomicReferenceArray;
invoke-virtual {v5, v6, v0}, Ljava/util/concurrent/atomic/AtomicReferenceArray;->getAndSet(ILjava/lang/Object;)Ljava/lang/Object;
move-result-object v5
check-cast v5, Lx/a/b2/i;
:goto_4
if-eqz v5, :cond_5
invoke-virtual {p0, p2, v5}, Lx/a/b2/o;->a(Lx/a/b2/e;Lx/a/b2/i;)V
add-int/lit8 v4, v4, 0x1
goto :goto_3
:cond_5
const/4 v3, 0x0
goto :goto_0
:cond_6
return v3
:cond_7
const-string p1, "globalQueue"
invoke-static {p1}, Lw/u/b/j;->a(Ljava/lang/String;)V
throw v0
:cond_8
const-string p1, "task"
invoke-static {p1}, Lw/u/b/j;->a(Ljava/lang/String;)V
throw v0
.end method

View file

@ -0,0 +1,92 @@
.class public final Lx/a/c;
.super Lx/a/a;
.source "Builders.kt"
# annotations
.annotation system Ldalvik/annotation/Signature;
value = {
"<T:",
"Ljava/lang/Object;",
">",
"Lx/a/a<",
"TT;>;"
}
.end annotation
# instance fields
.field public final g:Ljava/lang/Thread;
.field public final h:Lx/a/r0;
# direct methods
.method public constructor <init>(Lkotlin/coroutines/CoroutineContext;Ljava/lang/Thread;Lx/a/r0;)V
.locals 1
const/4 v0, 0x0
if-eqz p1, :cond_1
if-eqz p2, :cond_0
const/4 v0, 0x1
invoke-direct {p0, p1, v0}, Lx/a/a;-><init>(Lkotlin/coroutines/CoroutineContext;Z)V
iput-object p2, p0, Lx/a/c;->g:Ljava/lang/Thread;
iput-object p3, p0, Lx/a/c;->h:Lx/a/r0;
return-void
:cond_0
const-string p1, "blockedThread"
invoke-static {p1}, Lw/u/b/j;->a(Ljava/lang/String;)V
throw v0
:cond_1
const-string p1, "parentContext"
invoke-static {p1}, Lw/u/b/j;->a(Ljava/lang/String;)V
throw v0
.end method
# virtual methods
.method public a(Ljava/lang/Object;I)V
.locals 0
invoke-static {}, Ljava/lang/Thread;->currentThread()Ljava/lang/Thread;
move-result-object p1
iget-object p2, p0, Lx/a/c;->g:Ljava/lang/Thread;
invoke-static {p1, p2}, Lw/u/b/j;->areEqual(Ljava/lang/Object;Ljava/lang/Object;)Z
move-result p1
xor-int/lit8 p1, p1, 0x1
if-eqz p1, :cond_0
iget-object p1, p0, Lx/a/c;->g:Ljava/lang/Thread;
invoke-static {p1}, Ljava/util/concurrent/locks/LockSupport;->unpark(Ljava/lang/Thread;)V
:cond_0
return-void
.end method
.method public d()Z
.locals 1
const/4 v0, 0x0
return v0
.end method

View file

@ -0,0 +1,128 @@
.class public final enum Lx/a/c0;
.super Ljava/lang/Enum;
.source "CoroutineStart.kt"
# annotations
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/lang/Enum<",
"Lx/a/c0;",
">;"
}
.end annotation
# static fields
.field public static final enum d:Lx/a/c0;
.field public static final enum e:Lx/a/c0;
.field public static final enum f:Lx/a/c0;
.field public static final enum g:Lx/a/c0;
.field public static final synthetic h:[Lx/a/c0;
# direct methods
.method public static constructor <clinit>()V
.locals 4
const/4 v0, 0x4
new-array v0, v0, [Lx/a/c0;
new-instance v1, Lx/a/c0;
const/4 v2, 0x0
const-string v3, "DEFAULT"
invoke-direct {v1, v3, v2}, Lx/a/c0;-><init>(Ljava/lang/String;I)V
sput-object v1, Lx/a/c0;->d:Lx/a/c0;
aput-object v1, v0, v2
new-instance v1, Lx/a/c0;
const/4 v2, 0x1
const-string v3, "LAZY"
invoke-direct {v1, v3, v2}, Lx/a/c0;-><init>(Ljava/lang/String;I)V
sput-object v1, Lx/a/c0;->e:Lx/a/c0;
aput-object v1, v0, v2
new-instance v1, Lx/a/c0;
const/4 v2, 0x2
const-string v3, "ATOMIC"
invoke-direct {v1, v3, v2}, Lx/a/c0;-><init>(Ljava/lang/String;I)V
sput-object v1, Lx/a/c0;->f:Lx/a/c0;
aput-object v1, v0, v2
new-instance v1, Lx/a/c0;
const/4 v2, 0x3
const-string v3, "UNDISPATCHED"
invoke-direct {v1, v3, v2}, Lx/a/c0;-><init>(Ljava/lang/String;I)V
sput-object v1, Lx/a/c0;->g:Lx/a/c0;
aput-object v1, v0, v2
sput-object v0, Lx/a/c0;->h:[Lx/a/c0;
return-void
.end method
.method public constructor <init>(Ljava/lang/String;I)V
.locals 0
.annotation system Ldalvik/annotation/Signature;
value = {
"()V"
}
.end annotation
invoke-direct {p0, p1, p2}, Ljava/lang/Enum;-><init>(Ljava/lang/String;I)V
return-void
.end method
.method public static valueOf(Ljava/lang/String;)Lx/a/c0;
.locals 1
const-class v0, Lx/a/c0;
invoke-static {v0, p0}, Ljava/lang/Enum;->valueOf(Ljava/lang/Class;Ljava/lang/String;)Ljava/lang/Enum;
move-result-object p0
check-cast p0, Lx/a/c0;
return-object p0
.end method
.method public static values()[Lx/a/c0;
.locals 1
sget-object v0, Lx/a/c0;->h:[Lx/a/c0;
invoke-virtual {v0}, [Lx/a/c0;->clone()Ljava/lang/Object;
move-result-object v0
check-cast v0, [Lx/a/c0;
return-object v0
.end method

View file

@ -0,0 +1,131 @@
.class public final Lx/a/c1;
.super Lx/a/g1;
.source "JobSupport.kt"
# annotations
.annotation system Ldalvik/annotation/Signature;
value = {
"Lx/a/g1<",
"Lkotlinx/coroutines/Job;",
">;"
}
.end annotation
# instance fields
.field public final h:Lkotlin/jvm/functions/Function1;
.annotation system Ldalvik/annotation/Signature;
value = {
"Lkotlin/jvm/functions/Function1<",
"Ljava/lang/Throwable;",
"Lkotlin/Unit;",
">;"
}
.end annotation
.end field
# direct methods
.method public constructor <init>(Lkotlinx/coroutines/Job;Lkotlin/jvm/functions/Function1;)V
.locals 1
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Lkotlinx/coroutines/Job;",
"Lkotlin/jvm/functions/Function1<",
"-",
"Ljava/lang/Throwable;",
"Lkotlin/Unit;",
">;)V"
}
.end annotation
const/4 v0, 0x0
if-eqz p1, :cond_1
if-eqz p2, :cond_0
invoke-direct {p0, p1}, Lx/a/g1;-><init>(Lkotlinx/coroutines/Job;)V
iput-object p2, p0, Lx/a/c1;->h:Lkotlin/jvm/functions/Function1;
return-void
:cond_0
const-string p1, "handler"
invoke-static {p1}, Lw/u/b/j;->a(Ljava/lang/String;)V
throw v0
:cond_1
const-string p1, "job"
invoke-static {p1}, Lw/u/b/j;->a(Ljava/lang/String;)V
throw v0
.end method
# virtual methods
.method public b(Ljava/lang/Throwable;)V
.locals 1
iget-object v0, p0, Lx/a/c1;->h:Lkotlin/jvm/functions/Function1;
invoke-interface {v0, p1}, Lkotlin/jvm/functions/Function1;->invoke(Ljava/lang/Object;)Ljava/lang/Object;
return-void
.end method
.method public invoke(Ljava/lang/Object;)Ljava/lang/Object;
.locals 1
check-cast p1, Ljava/lang/Throwable;
iget-object v0, p0, Lx/a/c1;->h:Lkotlin/jvm/functions/Function1;
invoke-interface {v0, p1}, Lkotlin/jvm/functions/Function1;->invoke(Ljava/lang/Object;)Ljava/lang/Object;
sget-object p1, Lkotlin/Unit;->a:Lkotlin/Unit;
return-object p1
.end method
.method public toString()Ljava/lang/String;
.locals 2
const-string v0, "InvokeOnCompletion["
invoke-static {v0}, Le/e/b/a/a;->a(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v0
invoke-static {p0}, Lx/a/e0;->a(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/16 v1, 0x40
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
invoke-static {p0}, Lx/a/e0;->b(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/16 v1, 0x5d
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
return-object v0
.end method

View file

@ -0,0 +1,3 @@
.class public interface abstract Lx/a/c2/a;
.super Ljava/lang/Object;
.source "Select.kt"

View file

@ -0,0 +1,33 @@
.class public final Lx/a/d;
.super Lx/a/s0;
.source "EventLoop.kt"
# instance fields
.field public final i:Ljava/lang/Thread;
# direct methods
.method public constructor <init>(Ljava/lang/Thread;)V
.locals 1
const-string v0, "thread"
invoke-static {p1, v0}, Lw/u/b/j;->checkParameterIsNotNull(Ljava/lang/Object;Ljava/lang/String;)V
invoke-direct {p0}, Lx/a/s0;-><init>()V
iput-object p1, p0, Lx/a/d;->i:Ljava/lang/Thread;
return-void
.end method
# virtual methods
.method public i()Ljava/lang/Thread;
.locals 1
iget-object v0, p0, Lx/a/d;->i:Ljava/lang/Thread;
return-object v0
.end method

View file

@ -0,0 +1,33 @@
.class public final Lx/a/d0;
.super Ljava/lang/Error;
.source "Exceptions.kt"
# direct methods
.method public constructor <init>(Ljava/lang/String;Ljava/lang/Throwable;)V
.locals 1
const/4 v0, 0x0
if-eqz p1, :cond_1
if-eqz p2, :cond_0
invoke-direct {p0, p1, p2}, Ljava/lang/Error;-><init>(Ljava/lang/String;Ljava/lang/Throwable;)V
return-void
:cond_0
const-string p1, "cause"
invoke-static {p1}, Lw/u/b/j;->a(Ljava/lang/String;)V
throw v0
:cond_1
const-string p1, "message"
invoke-static {p1}, Lw/u/b/j;->a(Ljava/lang/String;)V
throw v0
.end method

View file

@ -0,0 +1,268 @@
.class public final Lx/a/d1;
.super Ljava/util/concurrent/CancellationException;
.source "Exceptions.kt"
# interfaces
.implements Lx/a/v;
# annotations
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/concurrent/CancellationException;",
"Lx/a/v<",
"Lx/a/d1;",
">;"
}
.end annotation
# instance fields
.field public final job:Lkotlinx/coroutines/Job;
# direct methods
.method public constructor <init>(Ljava/lang/String;Ljava/lang/Throwable;Lkotlinx/coroutines/Job;)V
.locals 1
const/4 v0, 0x0
if-eqz p1, :cond_2
if-eqz p3, :cond_1
invoke-direct {p0, p1}, Ljava/util/concurrent/CancellationException;-><init>(Ljava/lang/String;)V
iput-object p3, p0, Lx/a/d1;->job:Lkotlinx/coroutines/Job;
if-eqz p2, :cond_0
invoke-virtual {p0, p2}, Ljava/util/concurrent/CancellationException;->initCause(Ljava/lang/Throwable;)Ljava/lang/Throwable;
:cond_0
return-void
:cond_1
const-string p1, "job"
invoke-static {p1}, Lw/u/b/j;->a(Ljava/lang/String;)V
throw v0
:cond_2
const-string p1, "message"
invoke-static {p1}, Lw/u/b/j;->a(Ljava/lang/String;)V
throw v0
.end method
# virtual methods
.method public bridge synthetic a()Ljava/lang/Throwable;
.locals 1
invoke-virtual {p0}, Lx/a/d1;->a()Lx/a/d1;
move-result-object v0
return-object v0
.end method
.method public a()Lx/a/d1;
.locals 3
sget-boolean v0, Lx/a/e0;->a:Z
const/4 v1, 0x0
if-eqz v0, :cond_1
new-instance v0, Lx/a/d1;
invoke-virtual {p0}, Ljava/util/concurrent/CancellationException;->getMessage()Ljava/lang/String;
move-result-object v2
if-eqz v2, :cond_0
iget-object v1, p0, Lx/a/d1;->job:Lkotlinx/coroutines/Job;
invoke-direct {v0, v2, p0, v1}, Lx/a/d1;-><init>(Ljava/lang/String;Ljava/lang/Throwable;Lkotlinx/coroutines/Job;)V
return-object v0
:cond_0
invoke-static {}, Lw/u/b/j;->throwNpe()V
throw v1
:cond_1
return-object v1
.end method
.method public equals(Ljava/lang/Object;)Z
.locals 2
if-eq p1, p0, :cond_1
instance-of v0, p1, Lx/a/d1;
if-eqz v0, :cond_0
check-cast p1, Lx/a/d1;
invoke-virtual {p1}, Ljava/util/concurrent/CancellationException;->getMessage()Ljava/lang/String;
move-result-object v0
invoke-virtual {p0}, Ljava/util/concurrent/CancellationException;->getMessage()Ljava/lang/String;
move-result-object v1
invoke-static {v0, v1}, Lw/u/b/j;->areEqual(Ljava/lang/Object;Ljava/lang/Object;)Z
move-result v0
if-eqz v0, :cond_0
iget-object v0, p1, Lx/a/d1;->job:Lkotlinx/coroutines/Job;
iget-object v1, p0, Lx/a/d1;->job:Lkotlinx/coroutines/Job;
invoke-static {v0, v1}, Lw/u/b/j;->areEqual(Ljava/lang/Object;Ljava/lang/Object;)Z
move-result v0
if-eqz v0, :cond_0
invoke-virtual {p1}, Ljava/util/concurrent/CancellationException;->getCause()Ljava/lang/Throwable;
move-result-object p1
invoke-virtual {p0}, Ljava/util/concurrent/CancellationException;->getCause()Ljava/lang/Throwable;
move-result-object v0
invoke-static {p1, v0}, Lw/u/b/j;->areEqual(Ljava/lang/Object;Ljava/lang/Object;)Z
move-result p1
if-eqz p1, :cond_0
goto :goto_0
:cond_0
const/4 p1, 0x0
goto :goto_1
:cond_1
:goto_0
const/4 p1, 0x1
:goto_1
return p1
.end method
.method public fillInStackTrace()Ljava/lang/Throwable;
.locals 2
sget-boolean v0, Lx/a/e0;->a:Z
if-eqz v0, :cond_0
invoke-super {p0}, Ljava/util/concurrent/CancellationException;->fillInStackTrace()Ljava/lang/Throwable;
move-result-object v0
const-string v1, "super.fillInStackTrace()"
invoke-static {v0, v1}, Lw/u/b/j;->checkExpressionValueIsNotNull(Ljava/lang/Object;Ljava/lang/String;)V
return-object v0
:cond_0
return-object p0
.end method
.method public hashCode()I
.locals 2
invoke-virtual {p0}, Ljava/util/concurrent/CancellationException;->getMessage()Ljava/lang/String;
move-result-object v0
if-eqz v0, :cond_1
invoke-virtual {v0}, Ljava/lang/String;->hashCode()I
move-result v0
mul-int/lit8 v0, v0, 0x1f
iget-object v1, p0, Lx/a/d1;->job:Lkotlinx/coroutines/Job;
invoke-virtual {v1}, Ljava/lang/Object;->hashCode()I
move-result v1
add-int/2addr v1, v0
mul-int/lit8 v1, v1, 0x1f
invoke-virtual {p0}, Ljava/util/concurrent/CancellationException;->getCause()Ljava/lang/Throwable;
move-result-object v0
if-eqz v0, :cond_0
invoke-virtual {v0}, Ljava/lang/Throwable;->hashCode()I
move-result v0
goto :goto_0
:cond_0
const/4 v0, 0x0
:goto_0
add-int/2addr v1, v0
return v1
:cond_1
invoke-static {}, Lw/u/b/j;->throwNpe()V
const/4 v0, 0x0
throw v0
.end method
.method public toString()Ljava/lang/String;
.locals 2
new-instance v0, Ljava/lang/StringBuilder;
invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
invoke-super {p0}, Ljava/util/concurrent/CancellationException;->toString()Ljava/lang/String;
move-result-object v1
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string v1, "; job="
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-object v1, p0, Lx/a/d1;->job:Lkotlinx/coroutines/Job;
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
return-object v0
.end method

View file

@ -0,0 +1,94 @@
.class public final Lx/a/e;
.super Lx/a/f;
.source "Future.kt"
# instance fields
.field public final d:Ljava/util/concurrent/Future;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/concurrent/Future<",
"*>;"
}
.end annotation
.end field
# direct methods
.method public constructor <init>(Ljava/util/concurrent/Future;)V
.locals 0
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Ljava/util/concurrent/Future<",
"*>;)V"
}
.end annotation
if-eqz p1, :cond_0
invoke-direct {p0}, Lx/a/f;-><init>()V
iput-object p1, p0, Lx/a/e;->d:Ljava/util/concurrent/Future;
return-void
:cond_0
const-string p1, "future"
invoke-static {p1}, Lw/u/b/j;->a(Ljava/lang/String;)V
const/4 p1, 0x0
throw p1
.end method
# virtual methods
.method public a(Ljava/lang/Throwable;)V
.locals 1
iget-object p1, p0, Lx/a/e;->d:Ljava/util/concurrent/Future;
const/4 v0, 0x0
invoke-interface {p1, v0}, Ljava/util/concurrent/Future;->cancel(Z)Z
return-void
.end method
.method public bridge synthetic invoke(Ljava/lang/Object;)Ljava/lang/Object;
.locals 0
check-cast p1, Ljava/lang/Throwable;
invoke-virtual {p0, p1}, Lx/a/e;->a(Ljava/lang/Throwable;)V
sget-object p1, Lkotlin/Unit;->a:Lkotlin/Unit;
return-object p1
.end method
.method public toString()Ljava/lang/String;
.locals 2
const-string v0, "CancelFutureOnCancel["
invoke-static {v0}, Le/e/b/a/a;->a(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v0
iget-object v1, p0, Lx/a/e;->d:Ljava/util/concurrent/Future;
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
const/16 v1, 0x5d
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
return-object v0
.end method

View file

@ -0,0 +1,326 @@
.class public final Lx/a/e0;
.super Ljava/lang/Object;
.source "Debug.kt"
# static fields
.field public static final a:Z
.field public static final b:Z
# direct methods
.method public static constructor <clinit>()V
.locals 5
const-string v0, "kotlinx.coroutines.debug"
invoke-static {v0}, Lx/a/a2/x;->a(Ljava/lang/String;)Ljava/lang/String;
move-result-object v0
const/4 v1, 0x0
const/4 v2, 0x1
if-nez v0, :cond_0
goto :goto_0
:cond_0
invoke-virtual {v0}, Ljava/lang/String;->hashCode()I
move-result v3
if-eqz v3, :cond_3
const/16 v4, 0xddf
if-eq v3, v4, :cond_2
const v4, 0x1ad6f
if-eq v3, v4, :cond_1
const v4, 0x2dddaf
if-ne v3, v4, :cond_5
const-string v3, "auto"
invoke-virtual {v0, v3}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v3
if-eqz v3, :cond_5
:goto_0
const-class v0, Lx/a/z;
invoke-virtual {v0}, Ljava/lang/Class;->desiredAssertionStatus()Z
move-result v0
goto :goto_2
:cond_1
const-string v3, "off"
invoke-virtual {v0, v3}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v3
if-eqz v3, :cond_5
const/4 v0, 0x0
goto :goto_2
:cond_2
const-string v3, "on"
invoke-virtual {v0, v3}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v3
if-eqz v3, :cond_5
goto :goto_1
:cond_3
const-string v3, ""
invoke-virtual {v0, v3}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v3
if-eqz v3, :cond_5
:goto_1
const/4 v0, 0x1
:goto_2
sput-boolean v0, Lx/a/e0;->a:Z
sget-boolean v0, Lx/a/e0;->a:Z
if-eqz v0, :cond_4
const-string v0, "kotlinx.coroutines.stacktrace.recovery"
invoke-static {v0, v2}, Lx/a/a2/w;->a(Ljava/lang/String;Z)Z
move-result v0
if-eqz v0, :cond_4
const/4 v1, 0x1
:cond_4
sput-boolean v1, Lx/a/e0;->b:Z
return-void
:cond_5
new-instance v1, Ljava/lang/StringBuilder;
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
const-string v2, "System property \'kotlinx.coroutines.debug\' has unrecognized value \'"
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const/16 v0, 0x27
invoke-virtual {v1, v0}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
new-instance v1, Ljava/lang/IllegalStateException;
invoke-virtual {v0}, Ljava/lang/Object;->toString()Ljava/lang/String;
move-result-object v0
invoke-direct {v1, v0}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
throw v1
.end method
.method public static final a(Ljava/lang/Object;)Ljava/lang/String;
.locals 1
if-eqz p0, :cond_0
invoke-virtual {p0}, Ljava/lang/Object;->getClass()Ljava/lang/Class;
move-result-object p0
invoke-virtual {p0}, Ljava/lang/Class;->getSimpleName()Ljava/lang/String;
move-result-object p0
const-string v0, "this::class.java.simpleName"
invoke-static {p0, v0}, Lw/u/b/j;->checkExpressionValueIsNotNull(Ljava/lang/Object;Ljava/lang/String;)V
return-object p0
:cond_0
const-string p0, "$this$classSimpleName"
invoke-static {p0}, Lw/u/b/j;->a(Ljava/lang/String;)V
const/4 p0, 0x0
throw p0
.end method
.method public static final a(Lkotlin/coroutines/Continuation;)Ljava/lang/String;
.locals 3
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Lkotlin/coroutines/Continuation<",
"*>;)",
"Ljava/lang/String;"
}
.end annotation
if-eqz p0, :cond_2
instance-of v0, p0, Lx/a/j0;
if-eqz v0, :cond_0
invoke-virtual {p0}, Ljava/lang/Object;->toString()Ljava/lang/String;
move-result-object p0
goto :goto_2
:cond_0
const/16 v0, 0x40
:try_start_0
sget-object v1, Lw/i;->d:Lw/i$a;
new-instance v1, Ljava/lang/StringBuilder;
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
invoke-virtual {v1, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invoke-virtual {v1, v0}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
invoke-static {p0}, Lx/a/e0;->b(Ljava/lang/Object;)Ljava/lang/String;
move-result-object v2
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v1
invoke-static {v1}, Lw/i;->constructor-impl(Ljava/lang/Object;)Ljava/lang/Object;
:try_end_0
.catchall {:try_start_0 .. :try_end_0} :catchall_0
goto :goto_0
:catchall_0
move-exception v1
sget-object v2, Lw/i;->d:Lw/i$a;
invoke-static {v1}, Le/k/a/c/e/p/g;->createFailure(Ljava/lang/Throwable;)Ljava/lang/Object;
move-result-object v1
:goto_0
invoke-static {v1}, Lw/i;->exceptionOrNull-impl(Ljava/lang/Object;)Ljava/lang/Throwable;
move-result-object v2
if-nez v2, :cond_1
goto :goto_1
:cond_1
new-instance v1, Ljava/lang/StringBuilder;
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
invoke-virtual {p0}, Ljava/lang/Object;->getClass()Ljava/lang/Class;
move-result-object v2
invoke-virtual {v2}, Ljava/lang/Class;->getName()Ljava/lang/String;
move-result-object v2
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v1, v0}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
invoke-static {p0}, Lx/a/e0;->b(Ljava/lang/Object;)Ljava/lang/String;
move-result-object p0
invoke-virtual {v1, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v1
:goto_1
move-object p0, v1
check-cast p0, Ljava/lang/String;
:goto_2
return-object p0
:cond_2
const-string p0, "$this$toDebugString"
invoke-static {p0}, Lw/u/b/j;->a(Ljava/lang/String;)V
const/4 p0, 0x0
throw p0
.end method
.method public static final b(Ljava/lang/Object;)Ljava/lang/String;
.locals 1
if-eqz p0, :cond_0
invoke-static {p0}, Ljava/lang/System;->identityHashCode(Ljava/lang/Object;)I
move-result p0
invoke-static {p0}, Ljava/lang/Integer;->toHexString(I)Ljava/lang/String;
move-result-object p0
const-string v0, "Integer.toHexString(System.identityHashCode(this))"
invoke-static {p0, v0}, Lw/u/b/j;->checkExpressionValueIsNotNull(Ljava/lang/Object;Ljava/lang/String;)V
return-object p0
:cond_0
const-string p0, "$this$hexAddress"
invoke-static {p0}, Lw/u/b/j;->a(Ljava/lang/String;)V
const/4 p0, 0x0
throw p0
.end method

View file

@ -0,0 +1,41 @@
.class public abstract Lx/a/e1;
.super Lx/a/g1;
.source "JobSupport.kt"
# annotations
.annotation system Ldalvik/annotation/Signature;
value = {
"<J::",
"Lkotlinx/coroutines/Job;",
">",
"Lx/a/g1<",
"TJ;>;"
}
.end annotation
# direct methods
.method public constructor <init>(Lkotlinx/coroutines/Job;)V
.locals 0
.annotation system Ldalvik/annotation/Signature;
value = {
"(TJ;)V"
}
.end annotation
if-eqz p1, :cond_0
invoke-direct {p0, p1}, Lx/a/g1;-><init>(Lkotlinx/coroutines/Job;)V
return-void
:cond_0
const-string p1, "job"
invoke-static {p1}, Lw/u/b/j;->a(Ljava/lang/String;)V
const/4 p1, 0x0
throw p1
.end method

View file

@ -0,0 +1,16 @@
.class public abstract Lx/a/f;
.super Lx/a/g;
.source "CancellableContinuationImpl.kt"
# interfaces
.implements Lx/a/n1;
# direct methods
.method public constructor <init>()V
.locals 0
invoke-direct {p0}, Lx/a/g;-><init>()V
return-void
.end method

View file

@ -0,0 +1,465 @@
.class public final Lx/a/f0;
.super Lx/a/s0;
.source "DefaultExecutor.kt"
# interfaces
.implements Ljava/lang/Runnable;
# static fields
.field public static volatile _thread:Ljava/lang/Thread;
.field public static volatile debugStatus:I
.field public static final i:J
.field public static final j:Lx/a/f0;
# direct methods
.method public static constructor <clinit>()V
.locals 4
new-instance v0, Lx/a/f0;
invoke-direct {v0}, Lx/a/f0;-><init>()V
sput-object v0, Lx/a/f0;->j:Lx/a/f0;
const/4 v1, 0x0
const/4 v2, 0x1
const/4 v3, 0x0
invoke-static {v0, v1, v2, v3}, Lx/a/r0;->b(Lx/a/r0;ZILjava/lang/Object;)V
sget-object v0, Ljava/util/concurrent/TimeUnit;->MILLISECONDS:Ljava/util/concurrent/TimeUnit;
const-wide/16 v1, 0x3e8
:try_start_0
const-string v3, "kotlinx.coroutines.DefaultExecutor.keepAlive"
invoke-static {v3, v1, v2}, Ljava/lang/Long;->getLong(Ljava/lang/String;J)Ljava/lang/Long;
move-result-object v1
:try_end_0
.catch Ljava/lang/SecurityException; {:try_start_0 .. :try_end_0} :catch_0
goto :goto_0
:catch_0
invoke-static {v1, v2}, Ljava/lang/Long;->valueOf(J)Ljava/lang/Long;
move-result-object v1
:goto_0
const-string v2, "try {\n java.l\u2026AULT_KEEP_ALIVE\n }"
invoke-static {v1, v2}, Lw/u/b/j;->checkExpressionValueIsNotNull(Ljava/lang/Object;Ljava/lang/String;)V
invoke-virtual {v1}, Ljava/lang/Long;->longValue()J
move-result-wide v1
invoke-virtual {v0, v1, v2}, Ljava/util/concurrent/TimeUnit;->toNanos(J)J
move-result-wide v0
sput-wide v0, Lx/a/f0;->i:J
return-void
.end method
.method public constructor <init>()V
.locals 0
invoke-direct {p0}, Lx/a/s0;-><init>()V
return-void
.end method
# virtual methods
.method public i()Ljava/lang/Thread;
.locals 1
sget-object v0, Lx/a/f0;->_thread:Ljava/lang/Thread;
if-eqz v0, :cond_0
goto :goto_0
:cond_0
invoke-virtual {p0}, Lx/a/f0;->l()Ljava/lang/Thread;
move-result-object v0
:goto_0
return-object v0
.end method
.method public final declared-synchronized k()V
.locals 1
monitor-enter p0
:try_start_0
invoke-virtual {p0}, Lx/a/f0;->m()Z
move-result v0
:try_end_0
.catchall {:try_start_0 .. :try_end_0} :catchall_0
if-nez v0, :cond_0
monitor-exit p0
return-void
:cond_0
const/4 v0, 0x3
:try_start_1
sput v0, Lx/a/f0;->debugStatus:I
const/4 v0, 0x0
iput-object v0, p0, Lx/a/s0;->_queue:Ljava/lang/Object;
iput-object v0, p0, Lx/a/s0;->_delayed:Ljava/lang/Object;
invoke-virtual {p0}, Ljava/lang/Object;->notifyAll()V
:try_end_1
.catchall {:try_start_1 .. :try_end_1} :catchall_0
monitor-exit p0
return-void
:catchall_0
move-exception v0
monitor-exit p0
throw v0
.end method
.method public final declared-synchronized l()Ljava/lang/Thread;
.locals 2
monitor-enter p0
:try_start_0
sget-object v0, Lx/a/f0;->_thread:Ljava/lang/Thread;
if-eqz v0, :cond_0
goto :goto_0
:cond_0
new-instance v0, Ljava/lang/Thread;
const-string v1, "kotlinx.coroutines.DefaultExecutor"
invoke-direct {v0, p0, v1}, Ljava/lang/Thread;-><init>(Ljava/lang/Runnable;Ljava/lang/String;)V
sput-object v0, Lx/a/f0;->_thread:Ljava/lang/Thread;
const/4 v1, 0x1
invoke-virtual {v0, v1}, Ljava/lang/Thread;->setDaemon(Z)V
invoke-virtual {v0}, Ljava/lang/Thread;->start()V
:try_end_0
.catchall {:try_start_0 .. :try_end_0} :catchall_0
:goto_0
monitor-exit p0
return-object v0
:catchall_0
move-exception v0
monitor-exit p0
throw v0
.end method
.method public final m()Z
.locals 2
sget v0, Lx/a/f0;->debugStatus:I
const/4 v1, 0x2
if-eq v0, v1, :cond_1
const/4 v1, 0x3
if-ne v0, v1, :cond_0
goto :goto_0
:cond_0
const/4 v0, 0x0
goto :goto_1
:cond_1
:goto_0
const/4 v0, 0x1
:goto_1
return v0
.end method
.method public run()V
.locals 12
sget-object v0, Lx/a/t1;->b:Lx/a/t1;
invoke-virtual {v0, p0}, Lx/a/t1;->a(Lx/a/r0;)V
sget-object v0, Lx/a/w1;->a:Lx/a/v1;
check-cast v0, Lx/a/h0;
invoke-virtual {v0}, Lx/a/h0;->b()V
const/4 v0, 0x0
:try_start_0
invoke-virtual {p0}, Lx/a/f0;->t()Z
move-result v1
:try_end_0
.catchall {:try_start_0 .. :try_end_0} :catchall_0
if-nez v1, :cond_1
sput-object v0, Lx/a/f0;->_thread:Ljava/lang/Thread;
invoke-virtual {p0}, Lx/a/f0;->k()V
sget-object v0, Lx/a/w1;->a:Lx/a/v1;
check-cast v0, Lx/a/h0;
invoke-virtual {v0}, Lx/a/h0;->e()V
invoke-virtual {p0}, Lx/a/s0;->j()Z
move-result v0
if-nez v0, :cond_0
invoke-virtual {p0}, Lx/a/f0;->i()Ljava/lang/Thread;
:cond_0
return-void
:cond_1
const-wide v1, 0x7fffffffffffffffL
move-wide v3, v1
:cond_2
:goto_0
:try_start_1
invoke-static {}, Ljava/lang/Thread;->interrupted()Z
invoke-virtual {p0}, Lx/a/s0;->g()J
move-result-wide v5
const-wide/16 v7, 0x0
cmp-long v9, v5, v1
if-nez v9, :cond_7
cmp-long v9, v3, v1
if-nez v9, :cond_6
sget-object v10, Lx/a/w1;->a:Lx/a/v1;
:try_end_1
.catchall {:try_start_1 .. :try_end_1} :catchall_0
check-cast v10, Lx/a/h0;
:try_start_2
invoke-virtual {v10}, Lx/a/h0;->a()J
move-result-wide v10
if-nez v9, :cond_3
sget-wide v3, Lx/a/f0;->i:J
:try_end_2
.catchall {:try_start_2 .. :try_end_2} :catchall_0
add-long/2addr v3, v10
:cond_3
sub-long v9, v3, v10
cmp-long v11, v9, v7
if-gtz v11, :cond_5
sput-object v0, Lx/a/f0;->_thread:Ljava/lang/Thread;
invoke-virtual {p0}, Lx/a/f0;->k()V
sget-object v0, Lx/a/w1;->a:Lx/a/v1;
check-cast v0, Lx/a/h0;
invoke-virtual {v0}, Lx/a/h0;->e()V
invoke-virtual {p0}, Lx/a/s0;->j()Z
move-result v0
if-nez v0, :cond_4
invoke-virtual {p0}, Lx/a/f0;->i()Ljava/lang/Thread;
:cond_4
return-void
:cond_5
:try_start_3
invoke-static {v5, v6, v9, v10}, Lw/x/c;->coerceAtMost(JJ)J
move-result-wide v5
goto :goto_1
:cond_6
sget-wide v9, Lx/a/f0;->i:J
invoke-static {v5, v6, v9, v10}, Lw/x/c;->coerceAtMost(JJ)J
move-result-wide v5
:cond_7
:goto_1
cmp-long v9, v5, v7
if-lez v9, :cond_2
invoke-virtual {p0}, Lx/a/f0;->m()Z
move-result v7
:try_end_3
.catchall {:try_start_3 .. :try_end_3} :catchall_0
if-eqz v7, :cond_9
sput-object v0, Lx/a/f0;->_thread:Ljava/lang/Thread;
invoke-virtual {p0}, Lx/a/f0;->k()V
sget-object v0, Lx/a/w1;->a:Lx/a/v1;
check-cast v0, Lx/a/h0;
invoke-virtual {v0}, Lx/a/h0;->e()V
invoke-virtual {p0}, Lx/a/s0;->j()Z
move-result v0
if-nez v0, :cond_8
invoke-virtual {p0}, Lx/a/f0;->i()Ljava/lang/Thread;
:cond_8
return-void
:cond_9
:try_start_4
sget-object v7, Lx/a/w1;->a:Lx/a/v1;
:try_end_4
.catchall {:try_start_4 .. :try_end_4} :catchall_0
check-cast v7, Lx/a/h0;
:try_start_5
invoke-virtual {v7, p0, v5, v6}, Lx/a/h0;->a(Ljava/lang/Object;J)V
:try_end_5
.catchall {:try_start_5 .. :try_end_5} :catchall_0
goto :goto_0
:catchall_0
move-exception v1
sput-object v0, Lx/a/f0;->_thread:Ljava/lang/Thread;
invoke-virtual {p0}, Lx/a/f0;->k()V
sget-object v0, Lx/a/w1;->a:Lx/a/v1;
check-cast v0, Lx/a/h0;
invoke-virtual {v0}, Lx/a/h0;->e()V
invoke-virtual {p0}, Lx/a/s0;->j()Z
move-result v0
if-nez v0, :cond_a
invoke-virtual {p0}, Lx/a/f0;->i()Ljava/lang/Thread;
:cond_a
throw v1
.end method
.method public final declared-synchronized t()Z
.locals 1
monitor-enter p0
:try_start_0
invoke-virtual {p0}, Lx/a/f0;->m()Z
move-result v0
:try_end_0
.catchall {:try_start_0 .. :try_end_0} :catchall_0
if-eqz v0, :cond_0
const/4 v0, 0x0
monitor-exit p0
return v0
:cond_0
const/4 v0, 0x1
:try_start_1
sput v0, Lx/a/f0;->debugStatus:I
invoke-virtual {p0}, Ljava/lang/Object;->notifyAll()V
:try_end_1
.catchall {:try_start_1 .. :try_end_1} :catchall_0
monitor-exit p0
return v0
:catchall_0
move-exception v0
monitor-exit p0
throw v0
.end method

View file

@ -0,0 +1,38 @@
.class public Lx/a/f1;
.super Lx/a/h1;
.source "JobSupport.kt"
# interfaces
.implements Lx/a/p;
# direct methods
.method public constructor <init>(Lkotlinx/coroutines/Job;)V
.locals 1
const/4 v0, 0x1
invoke-direct {p0, v0}, Lx/a/h1;-><init>(Z)V
invoke-virtual {p0, p1}, Lx/a/h1;->a(Lkotlinx/coroutines/Job;)V
return-void
.end method
# virtual methods
.method public e()Z
.locals 1
const/4 v0, 0x0
return v0
.end method
.method public f()Z
.locals 1
const/4 v0, 0x1
return v0
.end method

View file

@ -0,0 +1,33 @@
.class public abstract Lx/a/g;
.super Ljava/lang/Object;
.source "CompletionHandler.kt"
# interfaces
.implements Lkotlin/jvm/functions/Function1;
# annotations
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/lang/Object;",
"Lkotlin/jvm/functions/Function1<",
"Ljava/lang/Throwable;",
"Lkotlin/Unit;",
">;"
}
.end annotation
# direct methods
.method public constructor <init>()V
.locals 0
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
# virtual methods
.method public abstract a(Ljava/lang/Throwable;)V
.end method

View file

@ -0,0 +1,19 @@
.class public final Lx/a/g0;
.super Ljava/lang/Object;
.source "DefaultExecutor.kt"
# static fields
.field public static final a:Lx/a/i0;
# direct methods
.method public static constructor <clinit>()V
.locals 1
sget-object v0, Lx/a/f0;->j:Lx/a/f0;
sput-object v0, Lx/a/g0;->a:Lx/a/i0;
return-void
.end method

View file

@ -0,0 +1,309 @@
.class public abstract Lx/a/g1;
.super Lx/a/t;
.source "JobSupport.kt"
# interfaces
.implements Lx/a/o0;
.implements Lx/a/y0;
# annotations
.annotation system Ldalvik/annotation/Signature;
value = {
"<J::",
"Lkotlinx/coroutines/Job;",
">",
"Lx/a/t;",
"Lx/a/o0;",
"Lx/a/y0;"
}
.end annotation
# instance fields
.field public final g:Lkotlinx/coroutines/Job;
.annotation system Ldalvik/annotation/Signature;
value = {
"TJ;"
}
.end annotation
.end field
# direct methods
.method public constructor <init>(Lkotlinx/coroutines/Job;)V
.locals 0
.annotation system Ldalvik/annotation/Signature;
value = {
"(TJ;)V"
}
.end annotation
if-eqz p1, :cond_0
invoke-direct {p0}, Lx/a/t;-><init>()V
iput-object p1, p0, Lx/a/g1;->g:Lkotlinx/coroutines/Job;
return-void
:cond_0
const-string p1, "job"
invoke-static {p1}, Lw/u/b/j;->a(Ljava/lang/String;)V
const/4 p1, 0x0
throw p1
.end method
# virtual methods
.method public a()Z
.locals 1
const/4 v0, 0x1
return v0
.end method
.method public dispose()V
.locals 9
iget-object v0, p0, Lx/a/g1;->g:Lkotlinx/coroutines/Job;
if-eqz v0, :cond_10
check-cast v0, Lx/a/h1;
const/4 v1, 0x0
:cond_0
invoke-virtual {v0}, Lx/a/h1;->g()Ljava/lang/Object;
move-result-object v2
instance-of v3, v2, Lx/a/g1;
if-eqz v3, :cond_2
if-eq v2, p0, :cond_1
goto/16 :goto_3
:cond_1
sget-object v3, Lx/a/h1;->d:Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;
sget-object v4, Lx/a/i1;->c:Lx/a/q0;
invoke-virtual {v3, v0, v2, v4}, Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;->compareAndSet(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Z
move-result v2
if-eqz v2, :cond_0
goto/16 :goto_3
:cond_2
instance-of v0, v2, Lx/a/y0;
if-eqz v0, :cond_f
check-cast v2, Lx/a/y0;
invoke-interface {v2}, Lx/a/y0;->getList()Lx/a/l1;
move-result-object v0
if-eqz v0, :cond_f
:cond_3
invoke-virtual {p0}, Lx/a/a2/n;->b()Ljava/lang/Object;
move-result-object v0
instance-of v2, v0, Lx/a/a2/t;
if-eqz v2, :cond_4
goto/16 :goto_3
:cond_4
if-ne v0, p0, :cond_5
goto/16 :goto_3
:cond_5
const-string v2, "null cannot be cast to non-null type kotlinx.coroutines.internal.Node /* = kotlinx.coroutines.internal.LockFreeLinkedListNode */"
if-eqz v0, :cond_e
move-object v3, v0
check-cast v3, Lx/a/a2/n;
invoke-virtual {v3}, Lx/a/a2/n;->f()Lx/a/a2/t;
move-result-object v4
sget-object v5, Lx/a/a2/n;->d:Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;
invoke-virtual {v5, p0, v0, v4}, Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;->compareAndSet(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Z
move-result v0
if-eqz v0, :cond_3
invoke-virtual {p0}, Lx/a/a2/n;->e()Lx/a/a2/n;
move-result-object v0
iget-object v4, p0, Lx/a/a2/n;->_next:Ljava/lang/Object;
if-eqz v4, :cond_d
check-cast v4, Lx/a/a2/t;
iget-object v4, v4, Lx/a/a2/t;->a:Lx/a/a2/n;
:goto_0
move-object v5, v1
:cond_6
:goto_1
invoke-virtual {v4}, Lx/a/a2/n;->b()Ljava/lang/Object;
move-result-object v6
instance-of v7, v6, Lx/a/a2/t;
if-eqz v7, :cond_7
invoke-virtual {v4}, Lx/a/a2/n;->e()Lx/a/a2/n;
check-cast v6, Lx/a/a2/t;
iget-object v4, v6, Lx/a/a2/t;->a:Lx/a/a2/n;
goto :goto_1
:cond_7
invoke-virtual {v0}, Lx/a/a2/n;->b()Ljava/lang/Object;
move-result-object v6
instance-of v7, v6, Lx/a/a2/t;
if-eqz v7, :cond_9
if-eqz v5, :cond_8
invoke-virtual {v0}, Lx/a/a2/n;->e()Lx/a/a2/n;
sget-object v7, Lx/a/a2/n;->d:Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;
check-cast v6, Lx/a/a2/t;
iget-object v6, v6, Lx/a/a2/t;->a:Lx/a/a2/n;
invoke-virtual {v7, v5, v0, v6}, Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;->compareAndSet(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Z
move-object v0, v5
goto :goto_0
:cond_8
iget-object v0, v0, Lx/a/a2/n;->_prev:Ljava/lang/Object;
invoke-static {v0}, Lx/a/a2/m;->a(Ljava/lang/Object;)Lx/a/a2/n;
move-result-object v0
goto :goto_1
:cond_9
if-eq v6, p0, :cond_c
if-eqz v6, :cond_b
move-object v5, v6
check-cast v5, Lx/a/a2/n;
if-ne v5, v4, :cond_a
goto :goto_2
:cond_a
move-object v8, v5
move-object v5, v0
move-object v0, v8
goto :goto_1
:cond_b
new-instance v0, Lw/l;
invoke-direct {v0, v2}, Lw/l;-><init>(Ljava/lang/String;)V
throw v0
:cond_c
sget-object v6, Lx/a/a2/n;->d:Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;
invoke-virtual {v6, v0, p0, v4}, Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;->compareAndSet(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Z
move-result v6
if-eqz v6, :cond_6
:goto_2
iget-object v0, p0, Lx/a/a2/n;->_prev:Ljava/lang/Object;
invoke-static {v0}, Lx/a/a2/m;->a(Ljava/lang/Object;)Lx/a/a2/n;
move-result-object v0
invoke-virtual {v3, v0, v1}, Lx/a/a2/n;->a(Lx/a/a2/n;Lx/a/a2/s;)Lx/a/a2/n;
goto :goto_3
:cond_d
new-instance v0, Lw/l;
const-string v1, "null cannot be cast to non-null type kotlinx.coroutines.internal.Removed"
invoke-direct {v0, v1}, Lw/l;-><init>(Ljava/lang/String;)V
throw v0
:cond_e
new-instance v0, Lw/l;
invoke-direct {v0, v2}, Lw/l;-><init>(Ljava/lang/String;)V
throw v0
:cond_f
:goto_3
return-void
:cond_10
new-instance v0, Lw/l;
const-string v1, "null cannot be cast to non-null type kotlinx.coroutines.JobSupport"
invoke-direct {v0, v1}, Lw/l;-><init>(Ljava/lang/String;)V
throw v0
.end method
.method public getList()Lx/a/l1;
.locals 1
const/4 v0, 0x0
return-object v0
.end method

View file

@ -0,0 +1,19 @@
.class public interface abstract Lx/a/h;
.super Ljava/lang/Object;
.source "CancellableContinuation.kt"
# interfaces
.implements Lkotlin/coroutines/Continuation;
# annotations
.annotation system Ldalvik/annotation/Signature;
value = {
"<T:",
"Ljava/lang/Object;",
">",
"Ljava/lang/Object;",
"Lkotlin/coroutines/Continuation<",
"TT;>;"
}
.end annotation

View file

@ -0,0 +1,123 @@
.class public final Lx/a/h0;
.super Ljava/lang/Object;
.source "TimeSource.kt"
# interfaces
.implements Lx/a/v1;
# static fields
.field public static final a:Lx/a/h0;
# direct methods
.method public static constructor <clinit>()V
.locals 1
new-instance v0, Lx/a/h0;
invoke-direct {v0}, Lx/a/h0;-><init>()V
sput-object v0, Lx/a/h0;->a:Lx/a/h0;
return-void
.end method
.method public constructor <init>()V
.locals 0
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
# virtual methods
.method public a()J
.locals 2
invoke-static {}, Ljava/lang/System;->nanoTime()J
move-result-wide v0
return-wide v0
.end method
.method public a(Ljava/lang/Runnable;)Ljava/lang/Runnable;
.locals 0
if-eqz p1, :cond_0
return-object p1
:cond_0
const-string p1, "block"
invoke-static {p1}, Lw/u/b/j;->a(Ljava/lang/String;)V
const/4 p1, 0x0
throw p1
.end method
.method public a(Ljava/lang/Object;J)V
.locals 0
if-eqz p1, :cond_0
invoke-static {p1, p2, p3}, Ljava/util/concurrent/locks/LockSupport;->parkNanos(Ljava/lang/Object;J)V
return-void
:cond_0
const-string p1, "blocker"
invoke-static {p1}, Lw/u/b/j;->a(Ljava/lang/String;)V
const/4 p1, 0x0
throw p1
.end method
.method public a(Ljava/lang/Thread;)V
.locals 0
if-eqz p1, :cond_0
invoke-static {p1}, Ljava/util/concurrent/locks/LockSupport;->unpark(Ljava/lang/Thread;)V
return-void
:cond_0
const-string p1, "thread"
invoke-static {p1}, Lw/u/b/j;->a(Ljava/lang/String;)V
const/4 p1, 0x0
throw p1
.end method
.method public b()V
.locals 0
return-void
.end method
.method public c()V
.locals 0
return-void
.end method
.method public d()V
.locals 0
return-void
.end method
.method public e()V
.locals 0
return-void
.end method

View file

@ -0,0 +1,143 @@
.class public final Lx/a/h1$a;
.super Lx/a/g1;
.source "JobSupport.kt"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lx/a/h1;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x19
name = "a"
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"Lx/a/g1<",
"Lkotlinx/coroutines/Job;",
">;"
}
.end annotation
# instance fields
.field public final h:Lx/a/h1;
.field public final i:Lx/a/h1$b;
.field public final j:Lx/a/m;
.field public final k:Ljava/lang/Object;
# direct methods
.method public constructor <init>(Lx/a/h1;Lx/a/h1$b;Lx/a/m;Ljava/lang/Object;)V
.locals 1
const/4 v0, 0x0
if-eqz p1, :cond_2
if-eqz p2, :cond_1
if-eqz p3, :cond_0
iget-object v0, p3, Lx/a/m;->h:Lx/a/n;
invoke-direct {p0, v0}, Lx/a/g1;-><init>(Lkotlinx/coroutines/Job;)V
iput-object p1, p0, Lx/a/h1$a;->h:Lx/a/h1;
iput-object p2, p0, Lx/a/h1$a;->i:Lx/a/h1$b;
iput-object p3, p0, Lx/a/h1$a;->j:Lx/a/m;
iput-object p4, p0, Lx/a/h1$a;->k:Ljava/lang/Object;
return-void
:cond_0
const-string p1, "child"
invoke-static {p1}, Lw/u/b/j;->a(Ljava/lang/String;)V
throw v0
:cond_1
const-string p1, "state"
invoke-static {p1}, Lw/u/b/j;->a(Ljava/lang/String;)V
throw v0
:cond_2
const-string p1, "parent"
invoke-static {p1}, Lw/u/b/j;->a(Ljava/lang/String;)V
throw v0
.end method
# virtual methods
.method public b(Ljava/lang/Throwable;)V
.locals 3
iget-object p1, p0, Lx/a/h1$a;->h:Lx/a/h1;
iget-object v0, p0, Lx/a/h1$a;->i:Lx/a/h1$b;
iget-object v1, p0, Lx/a/h1$a;->j:Lx/a/m;
iget-object v2, p0, Lx/a/h1$a;->k:Ljava/lang/Object;
invoke-static {p1, v0, v1, v2}, Lx/a/h1;->a(Lx/a/h1;Lx/a/h1$b;Lx/a/m;Ljava/lang/Object;)V
return-void
.end method
.method public bridge synthetic invoke(Ljava/lang/Object;)Ljava/lang/Object;
.locals 0
check-cast p1, Ljava/lang/Throwable;
invoke-virtual {p0, p1}, Lx/a/h1$a;->b(Ljava/lang/Throwable;)V
sget-object p1, Lkotlin/Unit;->a:Lkotlin/Unit;
return-object p1
.end method
.method public toString()Ljava/lang/String;
.locals 2
const-string v0, "ChildCompletion["
invoke-static {v0}, Le/e/b/a/a;->a(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v0
iget-object v1, p0, Lx/a/h1$a;->j:Lx/a/m;
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
const-string v1, ", "
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-object v1, p0, Lx/a/h1$a;->k:Ljava/lang/Object;
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
const/16 v1, 0x5d
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
return-object v0
.end method

View file

@ -0,0 +1,384 @@
.class public final Lx/a/h1$b;
.super Ljava/lang/Object;
.source "JobSupport.kt"
# interfaces
.implements Lx/a/y0;
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lx/a/h1;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x19
name = "b"
.end annotation
# instance fields
.field public volatile _exceptionsHolder:Ljava/lang/Object;
.field public final d:Lx/a/l1;
.field public volatile isCompleting:Z
.field public volatile rootCause:Ljava/lang/Throwable;
# direct methods
.method public constructor <init>(Lx/a/l1;ZLjava/lang/Throwable;)V
.locals 1
const-string v0, "list"
invoke-static {p1, v0}, Lw/u/b/j;->checkParameterIsNotNull(Ljava/lang/Object;Ljava/lang/String;)V
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
iput-object p1, p0, Lx/a/h1$b;->d:Lx/a/l1;
iput-boolean p2, p0, Lx/a/h1$b;->isCompleting:Z
iput-object p3, p0, Lx/a/h1$b;->rootCause:Ljava/lang/Throwable;
return-void
.end method
# virtual methods
.method public final a(Ljava/lang/Throwable;)V
.locals 2
const-string v0, "exception"
invoke-static {p1, v0}, Lw/u/b/j;->checkParameterIsNotNull(Ljava/lang/Object;Ljava/lang/String;)V
iget-object v0, p0, Lx/a/h1$b;->rootCause:Ljava/lang/Throwable;
if-nez v0, :cond_0
iput-object p1, p0, Lx/a/h1$b;->rootCause:Ljava/lang/Throwable;
return-void
:cond_0
if-ne p1, v0, :cond_1
return-void
:cond_1
iget-object v0, p0, Lx/a/h1$b;->_exceptionsHolder:Ljava/lang/Object;
if-nez v0, :cond_2
iput-object p1, p0, Lx/a/h1$b;->_exceptionsHolder:Ljava/lang/Object;
goto :goto_0
:cond_2
instance-of v1, v0, Ljava/lang/Throwable;
if-eqz v1, :cond_4
if-ne p1, v0, :cond_3
return-void
:cond_3
invoke-virtual {p0}, Lx/a/h1$b;->b()Ljava/util/ArrayList;
move-result-object v1
invoke-virtual {v1, v0}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
invoke-virtual {v1, p1}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
iput-object v1, p0, Lx/a/h1$b;->_exceptionsHolder:Ljava/lang/Object;
goto :goto_0
:cond_4
instance-of v1, v0, Ljava/util/ArrayList;
if-eqz v1, :cond_5
check-cast v0, Ljava/util/ArrayList;
invoke-virtual {v0, p1}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
:goto_0
return-void
:cond_5
new-instance p1, Ljava/lang/StringBuilder;
invoke-direct {p1}, Ljava/lang/StringBuilder;-><init>()V
const-string v1, "State is "
invoke-virtual {p1, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invoke-virtual {p1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p1
new-instance v0, Ljava/lang/IllegalStateException;
invoke-virtual {p1}, Ljava/lang/Object;->toString()Ljava/lang/String;
move-result-object p1
invoke-direct {v0, p1}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
throw v0
.end method
.method public a()Z
.locals 1
iget-object v0, p0, Lx/a/h1$b;->rootCause:Ljava/lang/Throwable;
if-nez v0, :cond_0
const/4 v0, 0x1
goto :goto_0
:cond_0
const/4 v0, 0x0
:goto_0
return v0
.end method
.method public final b()Ljava/util/ArrayList;
.locals 2
.annotation system Ldalvik/annotation/Signature;
value = {
"()",
"Ljava/util/ArrayList<",
"Ljava/lang/Throwable;",
">;"
}
.end annotation
new-instance v0, Ljava/util/ArrayList;
const/4 v1, 0x4
invoke-direct {v0, v1}, Ljava/util/ArrayList;-><init>(I)V
return-object v0
.end method
.method public final b(Ljava/lang/Throwable;)Ljava/util/List;
.locals 3
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Ljava/lang/Throwable;",
")",
"Ljava/util/List<",
"Ljava/lang/Throwable;",
">;"
}
.end annotation
iget-object v0, p0, Lx/a/h1$b;->_exceptionsHolder:Ljava/lang/Object;
if-nez v0, :cond_0
invoke-virtual {p0}, Lx/a/h1$b;->b()Ljava/util/ArrayList;
move-result-object v0
goto :goto_0
:cond_0
instance-of v1, v0, Ljava/lang/Throwable;
if-eqz v1, :cond_1
invoke-virtual {p0}, Lx/a/h1$b;->b()Ljava/util/ArrayList;
move-result-object v1
invoke-virtual {v1, v0}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
move-object v0, v1
goto :goto_0
:cond_1
instance-of v1, v0, Ljava/util/ArrayList;
if-eqz v1, :cond_4
check-cast v0, Ljava/util/ArrayList;
:goto_0
iget-object v1, p0, Lx/a/h1$b;->rootCause:Ljava/lang/Throwable;
if-eqz v1, :cond_2
const/4 v2, 0x0
invoke-virtual {v0, v2, v1}, Ljava/util/ArrayList;->add(ILjava/lang/Object;)V
:cond_2
if-eqz p1, :cond_3
invoke-static {p1, v1}, Lw/u/b/j;->areEqual(Ljava/lang/Object;Ljava/lang/Object;)Z
move-result v1
xor-int/lit8 v1, v1, 0x1
if-eqz v1, :cond_3
invoke-virtual {v0, p1}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
:cond_3
invoke-static {}, Lx/a/i1;->a()Lx/a/a2/v;
move-result-object p1
iput-object p1, p0, Lx/a/h1$b;->_exceptionsHolder:Ljava/lang/Object;
return-object v0
:cond_4
new-instance p1, Ljava/lang/StringBuilder;
invoke-direct {p1}, Ljava/lang/StringBuilder;-><init>()V
const-string v1, "State is "
invoke-virtual {p1, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invoke-virtual {p1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p1
new-instance v0, Ljava/lang/IllegalStateException;
invoke-virtual {p1}, Ljava/lang/Object;->toString()Ljava/lang/String;
move-result-object p1
invoke-direct {v0, p1}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
throw v0
.end method
.method public final c()Z
.locals 1
iget-object v0, p0, Lx/a/h1$b;->rootCause:Ljava/lang/Throwable;
if-eqz v0, :cond_0
const/4 v0, 0x1
goto :goto_0
:cond_0
const/4 v0, 0x0
:goto_0
return v0
.end method
.method public final d()Z
.locals 2
iget-object v0, p0, Lx/a/h1$b;->_exceptionsHolder:Ljava/lang/Object;
invoke-static {}, Lx/a/i1;->a()Lx/a/a2/v;
move-result-object v1
if-ne v0, v1, :cond_0
const/4 v0, 0x1
goto :goto_0
:cond_0
const/4 v0, 0x0
:goto_0
return v0
.end method
.method public getList()Lx/a/l1;
.locals 1
iget-object v0, p0, Lx/a/h1$b;->d:Lx/a/l1;
return-object v0
.end method
.method public toString()Ljava/lang/String;
.locals 2
const-string v0, "Finishing[cancelling="
invoke-static {v0}, Le/e/b/a/a;->a(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v0
invoke-virtual {p0}, Lx/a/h1$b;->c()Z
move-result v1
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Z)Ljava/lang/StringBuilder;
const-string v1, ", completing="
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-boolean v1, p0, Lx/a/h1$b;->isCompleting:Z
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Z)Ljava/lang/StringBuilder;
const-string v1, ", rootCause="
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-object v1, p0, Lx/a/h1$b;->rootCause:Ljava/lang/Throwable;
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
const-string v1, ", exceptions="
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-object v1, p0, Lx/a/h1$b;->_exceptionsHolder:Ljava/lang/Object;
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
const-string v1, ", list="
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-object v1, p0, Lx/a/h1$b;->d:Lx/a/l1;
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
const/16 v1, 0x5d
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
return-object v0
.end method

View file

@ -0,0 +1,34 @@
.class public final Lx/a/h1$c;
.super Lx/a/a2/n$a;
.source "LockFreeLinkedList.kt"
# annotations
.annotation system Ldalvik/annotation/EnclosingMethod;
value = Lx/a/h1;->a(Ljava/lang/Object;Lx/a/l1;Lx/a/g1;)Z
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x19
name = null
.end annotation
# instance fields
.field public final synthetic d:Lx/a/h1;
.field public final synthetic e:Ljava/lang/Object;
# direct methods
.method public constructor <init>(Lx/a/a2/n;Lx/a/a2/n;Lx/a/h1;Ljava/lang/Object;)V
.locals 0
iput-object p3, p0, Lx/a/h1$c;->d:Lx/a/h1;
iput-object p4, p0, Lx/a/h1$c;->e:Ljava/lang/Object;
invoke-direct {p0, p2}, Lx/a/a2/n$a;-><init>(Lx/a/a2/n;)V
return-void
.end method

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,17 @@
.class public interface abstract Lx/a/i0;
.super Ljava/lang/Object;
.source "Delay.kt"
# virtual methods
.method public abstract a(JLx/a/h;)V
.annotation system Ldalvik/annotation/Signature;
value = {
"(J",
"Lx/a/h<",
"-",
"Lkotlin/Unit;",
">;)V"
}
.end annotation
.end method

View file

@ -0,0 +1,99 @@
.class public final Lx/a/i1;
.super Ljava/lang/Object;
.source "JobSupport.kt"
# static fields
.field public static final a:Lx/a/a2/v;
.field public static final b:Lx/a/q0;
.field public static final c:Lx/a/q0;
# direct methods
.method public static constructor <clinit>()V
.locals 2
new-instance v0, Lx/a/a2/v;
const-string v1, "SEALED"
invoke-direct {v0, v1}, Lx/a/a2/v;-><init>(Ljava/lang/String;)V
sput-object v0, Lx/a/i1;->a:Lx/a/a2/v;
new-instance v0, Lx/a/q0;
const/4 v1, 0x0
invoke-direct {v0, v1}, Lx/a/q0;-><init>(Z)V
sput-object v0, Lx/a/i1;->b:Lx/a/q0;
new-instance v0, Lx/a/q0;
const/4 v1, 0x1
invoke-direct {v0, v1}, Lx/a/q0;-><init>(Z)V
sput-object v0, Lx/a/i1;->c:Lx/a/q0;
return-void
.end method
.method public static final synthetic a(Ljava/lang/Object;)Ljava/lang/Object;
.locals 1
instance-of v0, p0, Lx/a/y0;
if-eqz v0, :cond_0
new-instance v0, Lx/a/z0;
check-cast p0, Lx/a/y0;
invoke-direct {v0, p0}, Lx/a/z0;-><init>(Lx/a/y0;)V
move-object p0, v0
:cond_0
return-object p0
.end method
.method public static final synthetic a()Lx/a/a2/v;
.locals 1
sget-object v0, Lx/a/i1;->a:Lx/a/a2/v;
return-object v0
.end method
.method public static final b(Ljava/lang/Object;)Ljava/lang/Object;
.locals 1
instance-of v0, p0, Lx/a/z0;
if-nez v0, :cond_0
const/4 v0, 0x0
goto :goto_0
:cond_0
move-object v0, p0
:goto_0
check-cast v0, Lx/a/z0;
if-eqz v0, :cond_1
iget-object v0, v0, Lx/a/z0;->a:Lx/a/y0;
if-eqz v0, :cond_1
move-object p0, v0
:cond_1
return-object p0
.end method

View file

@ -0,0 +1,107 @@
.class public final Lx/a/j;
.super Lx/a/q;
.source "CompletedExceptionally.kt"
# static fields
.field public static final c:Ljava/util/concurrent/atomic/AtomicIntegerFieldUpdater;
# instance fields
.field public volatile _resumed:I
# direct methods
.method public static constructor <clinit>()V
.locals 2
const-class v0, Lx/a/j;
const-string v1, "_resumed"
invoke-static {v0, v1}, Ljava/util/concurrent/atomic/AtomicIntegerFieldUpdater;->newUpdater(Ljava/lang/Class;Ljava/lang/String;)Ljava/util/concurrent/atomic/AtomicIntegerFieldUpdater;
move-result-object v0
sput-object v0, Lx/a/j;->c:Ljava/util/concurrent/atomic/AtomicIntegerFieldUpdater;
return-void
.end method
.method public constructor <init>(Lkotlin/coroutines/Continuation;Ljava/lang/Throwable;Z)V
.locals 2
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Lkotlin/coroutines/Continuation<",
"*>;",
"Ljava/lang/Throwable;",
"Z)V"
}
.end annotation
if-eqz p1, :cond_1
if-eqz p2, :cond_0
goto :goto_0
:cond_0
new-instance p2, Ljava/util/concurrent/CancellationException;
new-instance v0, Ljava/lang/StringBuilder;
invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
const-string v1, "Continuation "
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v0, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
const-string p1, " was cancelled normally"
invoke-virtual {v0, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p1
invoke-direct {p2, p1}, Ljava/util/concurrent/CancellationException;-><init>(Ljava/lang/String;)V
:goto_0
invoke-direct {p0, p2, p3}, Lx/a/q;-><init>(Ljava/lang/Throwable;Z)V
const/4 p1, 0x0
iput p1, p0, Lx/a/j;->_resumed:I
return-void
:cond_1
const-string p1, "continuation"
invoke-static {p1}, Lw/u/b/j;->a(Ljava/lang/String;)V
const/4 p1, 0x0
throw p1
.end method
# virtual methods
.method public final b()Z
.locals 3
sget-object v0, Lx/a/j;->c:Ljava/util/concurrent/atomic/AtomicIntegerFieldUpdater;
const/4 v1, 0x0
const/4 v2, 0x1
invoke-virtual {v0, p0, v1, v2}, Ljava/util/concurrent/atomic/AtomicIntegerFieldUpdater;->compareAndSet(Ljava/lang/Object;II)Z
move-result v0
return v0
.end method

View file

@ -0,0 +1,354 @@
.class public final Lx/a/j0;
.super Lx/a/m0;
.source "Dispatched.kt"
# interfaces
.implements Lkotlin/coroutines/jvm/internal/CoroutineStackFrame;
.implements Lkotlin/coroutines/Continuation;
# annotations
.annotation system Ldalvik/annotation/Signature;
value = {
"<T:",
"Ljava/lang/Object;",
">",
"Lx/a/m0<",
"TT;>;",
"Lkotlin/coroutines/jvm/internal/CoroutineStackFrame;",
"Lkotlin/coroutines/Continuation<",
"TT;>;"
}
.end annotation
# instance fields
.field public g:Ljava/lang/Object;
.field public final h:Lkotlin/coroutines/jvm/internal/CoroutineStackFrame;
.field public final i:Ljava/lang/Object;
.field public final j:Lx/a/x;
.field public final k:Lkotlin/coroutines/Continuation;
.annotation system Ldalvik/annotation/Signature;
value = {
"Lkotlin/coroutines/Continuation<",
"TT;>;"
}
.end annotation
.end field
# direct methods
.method public constructor <init>(Lx/a/x;Lkotlin/coroutines/Continuation;)V
.locals 2
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Lx/a/x;",
"Lkotlin/coroutines/Continuation<",
"-TT;>;)V"
}
.end annotation
const/4 v0, 0x0
if-eqz p1, :cond_2
if-eqz p2, :cond_1
const/4 v1, 0x0
invoke-direct {p0, v1}, Lx/a/m0;-><init>(I)V
iput-object p1, p0, Lx/a/j0;->j:Lx/a/x;
iput-object p2, p0, Lx/a/j0;->k:Lkotlin/coroutines/Continuation;
sget-object p1, Lx/a/l0;->a:Lx/a/a2/v;
iput-object p1, p0, Lx/a/j0;->g:Ljava/lang/Object;
iget-object p1, p0, Lx/a/j0;->k:Lkotlin/coroutines/Continuation;
instance-of p2, p1, Lkotlin/coroutines/jvm/internal/CoroutineStackFrame;
if-nez p2, :cond_0
move-object p1, v0
:cond_0
check-cast p1, Lkotlin/coroutines/jvm/internal/CoroutineStackFrame;
iput-object p1, p0, Lx/a/j0;->h:Lkotlin/coroutines/jvm/internal/CoroutineStackFrame;
invoke-virtual {p0}, Lx/a/j0;->getContext()Lkotlin/coroutines/CoroutineContext;
move-result-object p1
invoke-static {p1}, Lx/a/a2/y;->a(Lkotlin/coroutines/CoroutineContext;)Ljava/lang/Object;
move-result-object p1
iput-object p1, p0, Lx/a/j0;->i:Ljava/lang/Object;
return-void
:cond_1
const-string p1, "continuation"
invoke-static {p1}, Lw/u/b/j;->a(Ljava/lang/String;)V
throw v0
:cond_2
const-string p1, "dispatcher"
invoke-static {p1}, Lw/u/b/j;->a(Ljava/lang/String;)V
throw v0
.end method
# virtual methods
.method public b()Lkotlin/coroutines/Continuation;
.locals 0
.annotation system Ldalvik/annotation/Signature;
value = {
"()",
"Lkotlin/coroutines/Continuation<",
"TT;>;"
}
.end annotation
return-object p0
.end method
.method public c()Ljava/lang/Object;
.locals 2
iget-object v0, p0, Lx/a/j0;->g:Ljava/lang/Object;
sget-object v1, Lx/a/l0;->a:Lx/a/a2/v;
if-eq v0, v1, :cond_0
const/4 v1, 0x1
goto :goto_0
:cond_0
const/4 v1, 0x0
:goto_0
if-eqz v1, :cond_1
sget-object v1, Lx/a/l0;->a:Lx/a/a2/v;
iput-object v1, p0, Lx/a/j0;->g:Ljava/lang/Object;
return-object v0
:cond_1
new-instance v0, Ljava/lang/IllegalStateException;
const-string v1, "Check failed."
invoke-virtual {v1}, Ljava/lang/Object;->toString()Ljava/lang/String;
move-result-object v1
invoke-direct {v0, v1}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
throw v0
.end method
.method public getCallerFrame()Lkotlin/coroutines/jvm/internal/CoroutineStackFrame;
.locals 1
iget-object v0, p0, Lx/a/j0;->h:Lkotlin/coroutines/jvm/internal/CoroutineStackFrame;
return-object v0
.end method
.method public getContext()Lkotlin/coroutines/CoroutineContext;
.locals 1
iget-object v0, p0, Lx/a/j0;->k:Lkotlin/coroutines/Continuation;
invoke-interface {v0}, Lkotlin/coroutines/Continuation;->getContext()Lkotlin/coroutines/CoroutineContext;
move-result-object v0
return-object v0
.end method
.method public getStackTraceElement()Ljava/lang/StackTraceElement;
.locals 1
const/4 v0, 0x0
return-object v0
.end method
.method public resumeWith(Ljava/lang/Object;)V
.locals 5
iget-object v0, p0, Lx/a/j0;->k:Lkotlin/coroutines/Continuation;
invoke-interface {v0}, Lkotlin/coroutines/Continuation;->getContext()Lkotlin/coroutines/CoroutineContext;
move-result-object v0
invoke-static {p1}, Le/k/a/c/e/p/g;->d(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v1
iget-object v2, p0, Lx/a/j0;->j:Lx/a/x;
invoke-virtual {v2, v0}, Lx/a/x;->a(Lkotlin/coroutines/CoroutineContext;)Z
move-result v2
const/4 v3, 0x0
if-eqz v2, :cond_0
iput-object v1, p0, Lx/a/j0;->g:Ljava/lang/Object;
iput v3, p0, Lx/a/m0;->f:I
iget-object p1, p0, Lx/a/j0;->j:Lx/a/x;
invoke-virtual {p1, v0, p0}, Lx/a/x;->a(Lkotlin/coroutines/CoroutineContext;Ljava/lang/Runnable;)V
goto :goto_1
:cond_0
sget-object v0, Lx/a/t1;->b:Lx/a/t1;
invoke-virtual {v0}, Lx/a/t1;->b()Lx/a/r0;
move-result-object v0
invoke-virtual {v0}, Lx/a/r0;->f()Z
move-result v2
if-eqz v2, :cond_1
iput-object v1, p0, Lx/a/j0;->g:Ljava/lang/Object;
iput v3, p0, Lx/a/m0;->f:I
invoke-virtual {v0, p0}, Lx/a/r0;->a(Lx/a/m0;)V
goto :goto_1
:cond_1
const/4 v1, 0x1
invoke-virtual {v0, v1}, Lx/a/r0;->c(Z)V
:try_start_0
invoke-virtual {p0}, Lx/a/j0;->getContext()Lkotlin/coroutines/CoroutineContext;
move-result-object v2
iget-object v3, p0, Lx/a/j0;->i:Ljava/lang/Object;
invoke-static {v2, v3}, Lx/a/a2/y;->b(Lkotlin/coroutines/CoroutineContext;Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v3
:try_end_0
.catchall {:try_start_0 .. :try_end_0} :catchall_1
:try_start_1
iget-object v4, p0, Lx/a/j0;->k:Lkotlin/coroutines/Continuation;
invoke-interface {v4, p1}, Lkotlin/coroutines/Continuation;->resumeWith(Ljava/lang/Object;)V
:try_end_1
.catchall {:try_start_1 .. :try_end_1} :catchall_0
:try_start_2
invoke-static {v2, v3}, Lx/a/a2/y;->a(Lkotlin/coroutines/CoroutineContext;Ljava/lang/Object;)V
:cond_2
invoke-virtual {v0}, Lx/a/r0;->h()Z
move-result p1
if-nez p1, :cond_2
goto :goto_0
:catchall_0
move-exception p1
invoke-static {v2, v3}, Lx/a/a2/y;->a(Lkotlin/coroutines/CoroutineContext;Ljava/lang/Object;)V
throw p1
:try_end_2
.catchall {:try_start_2 .. :try_end_2} :catchall_1
:catchall_1
move-exception p1
const/4 v2, 0x0
:try_start_3
invoke-virtual {p0, p1, v2}, Lx/a/m0;->a(Ljava/lang/Throwable;Ljava/lang/Throwable;)V
:try_end_3
.catchall {:try_start_3 .. :try_end_3} :catchall_2
:goto_0
invoke-virtual {v0, v1}, Lx/a/r0;->a(Z)V
:goto_1
return-void
:catchall_2
move-exception p1
invoke-virtual {v0, v1}, Lx/a/r0;->a(Z)V
throw p1
.end method
.method public toString()Ljava/lang/String;
.locals 2
const-string v0, "DispatchedContinuation["
invoke-static {v0}, Le/e/b/a/a;->a(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v0
iget-object v1, p0, Lx/a/j0;->j:Lx/a/x;
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
const-string v1, ", "
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-object v1, p0, Lx/a/j0;->k:Lkotlin/coroutines/Continuation;
invoke-static {v1}, Lx/a/e0;->a(Lkotlin/coroutines/Continuation;)Ljava/lang/String;
move-result-object v1
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const/16 v1, 0x5d
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
return-object v0
.end method

View file

@ -0,0 +1,103 @@
.class public final Lx/a/j1;
.super Lx/a/r1;
.source "Builders.common.kt"
# instance fields
.field public g:Lkotlin/jvm/functions/Function2;
.annotation system Ldalvik/annotation/Signature;
value = {
"Lkotlin/jvm/functions/Function2<",
"-",
"Lkotlinx/coroutines/CoroutineScope;",
"-",
"Lkotlin/coroutines/Continuation<",
"-",
"Lkotlin/Unit;",
">;+",
"Ljava/lang/Object;",
">;"
}
.end annotation
.end field
# direct methods
.method public constructor <init>(Lkotlin/coroutines/CoroutineContext;Lkotlin/jvm/functions/Function2;)V
.locals 1
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Lkotlin/coroutines/CoroutineContext;",
"Lkotlin/jvm/functions/Function2<",
"-",
"Lkotlinx/coroutines/CoroutineScope;",
"-",
"Lkotlin/coroutines/Continuation<",
"-",
"Lkotlin/Unit;",
">;+",
"Ljava/lang/Object;",
">;)V"
}
.end annotation
const/4 v0, 0x0
if-eqz p1, :cond_1
if-eqz p2, :cond_0
const/4 v0, 0x0
invoke-direct {p0, p1, v0}, Lx/a/r1;-><init>(Lkotlin/coroutines/CoroutineContext;Z)V
iput-object p2, p0, Lx/a/j1;->g:Lkotlin/jvm/functions/Function2;
return-void
:cond_0
const-string p1, "block"
invoke-static {p1}, Lw/u/b/j;->a(Ljava/lang/String;)V
throw v0
:cond_1
const-string p1, "parentContext"
invoke-static {p1}, Lw/u/b/j;->a(Ljava/lang/String;)V
throw v0
.end method
# virtual methods
.method public n()V
.locals 2
iget-object v0, p0, Lx/a/j1;->g:Lkotlin/jvm/functions/Function2;
if-eqz v0, :cond_0
const/4 v1, 0x0
iput-object v1, p0, Lx/a/j1;->g:Lkotlin/jvm/functions/Function2;
invoke-static {v0, p0, p0}, Lx/a/a2/w;->a(Lkotlin/jvm/functions/Function2;Ljava/lang/Object;Lkotlin/coroutines/Continuation;)V
return-void
:cond_0
new-instance v0, Ljava/lang/IllegalStateException;
const-string v1, "Already started"
invoke-virtual {v1}, Ljava/lang/Object;->toString()Ljava/lang/String;
move-result-object v1
invoke-direct {v0, v1}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
throw v0
.end method

View file

@ -0,0 +1,118 @@
.class public final Lx/a/k;
.super Lx/a/e1;
.source "JobSupport.kt"
# annotations
.annotation system Ldalvik/annotation/Signature;
value = {
"Lx/a/e1<",
"Lkotlinx/coroutines/Job;",
">;"
}
.end annotation
# instance fields
.field public final h:Lx/a/i;
.annotation system Ldalvik/annotation/Signature;
value = {
"Lx/a/i<",
"*>;"
}
.end annotation
.end field
# direct methods
.method public constructor <init>(Lkotlinx/coroutines/Job;Lx/a/i;)V
.locals 1
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Lkotlinx/coroutines/Job;",
"Lx/a/i<",
"*>;)V"
}
.end annotation
const/4 v0, 0x0
if-eqz p1, :cond_1
if-eqz p2, :cond_0
invoke-direct {p0, p1}, Lx/a/e1;-><init>(Lkotlinx/coroutines/Job;)V
iput-object p2, p0, Lx/a/k;->h:Lx/a/i;
return-void
:cond_0
const-string p1, "child"
invoke-static {p1}, Lw/u/b/j;->a(Ljava/lang/String;)V
throw v0
:cond_1
const-string p1, "parent"
invoke-static {p1}, Lw/u/b/j;->a(Ljava/lang/String;)V
throw v0
.end method
# virtual methods
.method public b(Ljava/lang/Throwable;)V
.locals 1
iget-object p1, p0, Lx/a/k;->h:Lx/a/i;
iget-object v0, p0, Lx/a/g1;->g:Lkotlinx/coroutines/Job;
invoke-virtual {p1, v0}, Lx/a/i;->a(Lkotlinx/coroutines/Job;)Ljava/lang/Throwable;
move-result-object v0
invoke-virtual {p1, v0}, Lx/a/i;->a(Ljava/lang/Throwable;)Z
return-void
.end method
.method public bridge synthetic invoke(Ljava/lang/Object;)Ljava/lang/Object;
.locals 0
check-cast p1, Ljava/lang/Throwable;
invoke-virtual {p0, p1}, Lx/a/k;->b(Ljava/lang/Throwable;)V
sget-object p1, Lkotlin/Unit;->a:Lkotlin/Unit;
return-object p1
.end method
.method public toString()Ljava/lang/String;
.locals 2
const-string v0, "ChildContinuation["
invoke-static {v0}, Le/e/b/a/a;->a(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v0
iget-object v1, p0, Lx/a/k;->h:Lx/a/i;
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
const/16 v1, 0x5d
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
return-object v0
.end method

View file

@ -0,0 +1,144 @@
.class public final Lx/a/k0;
.super Lx/a/a2/u;
.source "Builders.common.kt"
# annotations
.annotation system Ldalvik/annotation/Signature;
value = {
"<T:",
"Ljava/lang/Object;",
">",
"Lx/a/a2/u<",
"TT;>;"
}
.end annotation
# static fields
.field public static final h:Ljava/util/concurrent/atomic/AtomicIntegerFieldUpdater;
# instance fields
.field public volatile _decision:I
# direct methods
.method public static constructor <clinit>()V
.locals 2
const-class v0, Lx/a/k0;
const-string v1, "_decision"
invoke-static {v0, v1}, Ljava/util/concurrent/atomic/AtomicIntegerFieldUpdater;->newUpdater(Ljava/lang/Class;Ljava/lang/String;)Ljava/util/concurrent/atomic/AtomicIntegerFieldUpdater;
move-result-object v0
sput-object v0, Lx/a/k0;->h:Ljava/util/concurrent/atomic/AtomicIntegerFieldUpdater;
return-void
.end method
.method public constructor <init>(Lkotlin/coroutines/CoroutineContext;Lkotlin/coroutines/Continuation;)V
.locals 1
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Lkotlin/coroutines/CoroutineContext;",
"Lkotlin/coroutines/Continuation<",
"-TT;>;)V"
}
.end annotation
const/4 v0, 0x0
if-eqz p1, :cond_1
if-eqz p2, :cond_0
invoke-direct {p0, p1, p2}, Lx/a/a2/u;-><init>(Lkotlin/coroutines/CoroutineContext;Lkotlin/coroutines/Continuation;)V
const/4 p1, 0x0
iput p1, p0, Lx/a/k0;->_decision:I
return-void
:cond_0
const-string p1, "uCont"
invoke-static {p1}, Lw/u/b/j;->a(Ljava/lang/String;)V
throw v0
:cond_1
const-string p1, "context"
invoke-static {p1}, Lw/u/b/j;->a(Ljava/lang/String;)V
throw v0
.end method
# virtual methods
.method public a(Ljava/lang/Object;I)V
.locals 4
:cond_0
iget v0, p0, Lx/a/k0;->_decision:I
const/4 v1, 0x0
const/4 v2, 0x1
if-eqz v0, :cond_2
if-ne v0, v2, :cond_1
goto :goto_0
:cond_1
new-instance p1, Ljava/lang/IllegalStateException;
const-string p2, "Already resumed"
invoke-virtual {p2}, Ljava/lang/Object;->toString()Ljava/lang/String;
move-result-object p2
invoke-direct {p1, p2}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
throw p1
:cond_2
sget-object v0, Lx/a/k0;->h:Ljava/util/concurrent/atomic/AtomicIntegerFieldUpdater;
const/4 v3, 0x2
invoke-virtual {v0, p0, v1, v3}, Ljava/util/concurrent/atomic/AtomicIntegerFieldUpdater;->compareAndSet(Ljava/lang/Object;II)Z
move-result v0
if-eqz v0, :cond_0
const/4 v1, 0x1
:goto_0
if-eqz v1, :cond_3
return-void
:cond_3
invoke-super {p0, p1, p2}, Lx/a/a2/u;->a(Ljava/lang/Object;I)V
return-void
.end method
.method public l()I
.locals 1
const/4 v0, 0x0
return v0
.end method

View file

@ -0,0 +1,13 @@
.class public abstract Lx/a/k1;
.super Lx/a/x;
.source "MainCoroutineDispatcher.kt"
# direct methods
.method public constructor <init>()V
.locals 0
invoke-direct {p0}, Lx/a/x;-><init>()V
return-void
.end method

View file

@ -0,0 +1,11 @@
.class public interface abstract Lx/a/l;
.super Ljava/lang/Object;
.source "Job.kt"
# interfaces
.implements Lx/a/o0;
# virtual methods
.method public abstract a(Ljava/lang/Throwable;)Z
.end method

View file

@ -0,0 +1,965 @@
.class public final Lx/a/l0;
.super Ljava/lang/Object;
.source "Dispatched.kt"
# static fields
.field public static final a:Lx/a/a2/v;
# direct methods
.method public static constructor <clinit>()V
.locals 2
new-instance v0, Lx/a/a2/v;
const-string v1, "UNDEFINED"
invoke-direct {v0, v1}, Lx/a/a2/v;-><init>(Ljava/lang/String;)V
sput-object v0, Lx/a/l0;->a:Lx/a/a2/v;
return-void
.end method
.method public static final a(Lkotlin/coroutines/Continuation;Ljava/lang/Object;)V
.locals 7
.annotation system Ldalvik/annotation/Signature;
value = {
"<T:",
"Ljava/lang/Object;",
">(",
"Lkotlin/coroutines/Continuation<",
"-TT;>;TT;)V"
}
.end annotation
const/4 v0, 0x0
if-eqz p0, :cond_5
instance-of v1, p0, Lx/a/j0;
if-eqz v1, :cond_4
check-cast p0, Lx/a/j0;
iget-object v1, p0, Lx/a/j0;->j:Lx/a/x;
invoke-virtual {p0}, Lx/a/j0;->getContext()Lkotlin/coroutines/CoroutineContext;
move-result-object v2
invoke-virtual {v1, v2}, Lx/a/x;->a(Lkotlin/coroutines/CoroutineContext;)Z
move-result v1
const/4 v2, 0x1
if-eqz v1, :cond_0
iput-object p1, p0, Lx/a/j0;->g:Ljava/lang/Object;
iput v2, p0, Lx/a/m0;->f:I
iget-object p1, p0, Lx/a/j0;->j:Lx/a/x;
invoke-virtual {p0}, Lx/a/j0;->getContext()Lkotlin/coroutines/CoroutineContext;
move-result-object v0
invoke-virtual {p1, v0, p0}, Lx/a/x;->a(Lkotlin/coroutines/CoroutineContext;Ljava/lang/Runnable;)V
goto/16 :goto_3
:cond_0
sget-object v1, Lx/a/t1;->b:Lx/a/t1;
invoke-virtual {v1}, Lx/a/t1;->b()Lx/a/r0;
move-result-object v1
invoke-virtual {v1}, Lx/a/r0;->f()Z
move-result v3
if-eqz v3, :cond_1
iput-object p1, p0, Lx/a/j0;->g:Ljava/lang/Object;
iput v2, p0, Lx/a/m0;->f:I
invoke-virtual {v1, p0}, Lx/a/r0;->a(Lx/a/m0;)V
goto :goto_3
:cond_1
invoke-virtual {v1, v2}, Lx/a/r0;->c(Z)V
:try_start_0
invoke-virtual {p0}, Lx/a/j0;->getContext()Lkotlin/coroutines/CoroutineContext;
move-result-object v3
sget-object v4, Lkotlinx/coroutines/Job;->c:Lkotlinx/coroutines/Job$a;
invoke-interface {v3, v4}, Lkotlin/coroutines/CoroutineContext;->get(Lkotlin/coroutines/CoroutineContext$b;)Lkotlin/coroutines/CoroutineContext$a;
move-result-object v3
check-cast v3, Lkotlinx/coroutines/Job;
if-eqz v3, :cond_2
invoke-interface {v3}, Lkotlinx/coroutines/Job;->a()Z
move-result v4
if-nez v4, :cond_2
invoke-interface {v3}, Lkotlinx/coroutines/Job;->b()Ljava/util/concurrent/CancellationException;
move-result-object v3
sget-object v4, Lw/i;->d:Lw/i$a;
invoke-static {v3}, Le/k/a/c/e/p/g;->createFailure(Ljava/lang/Throwable;)Ljava/lang/Object;
move-result-object v3
invoke-interface {p0, v3}, Lkotlin/coroutines/Continuation;->resumeWith(Ljava/lang/Object;)V
const/4 v3, 0x1
goto :goto_0
:cond_2
const/4 v3, 0x0
:goto_0
if-nez v3, :cond_3
invoke-virtual {p0}, Lx/a/j0;->getContext()Lkotlin/coroutines/CoroutineContext;
move-result-object v3
iget-object v4, p0, Lx/a/j0;->i:Ljava/lang/Object;
invoke-static {v3, v4}, Lx/a/a2/y;->b(Lkotlin/coroutines/CoroutineContext;Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v4
:try_end_0
.catchall {:try_start_0 .. :try_end_0} :catchall_1
:try_start_1
iget-object v5, p0, Lx/a/j0;->k:Lkotlin/coroutines/Continuation;
sget-object v6, Lw/i;->d:Lw/i$a;
invoke-static {p1}, Lw/i;->constructor-impl(Ljava/lang/Object;)Ljava/lang/Object;
invoke-interface {v5, p1}, Lkotlin/coroutines/Continuation;->resumeWith(Ljava/lang/Object;)V
:try_end_1
.catchall {:try_start_1 .. :try_end_1} :catchall_0
:try_start_2
invoke-static {v3, v4}, Lx/a/a2/y;->a(Lkotlin/coroutines/CoroutineContext;Ljava/lang/Object;)V
goto :goto_1
:catchall_0
move-exception p1
invoke-static {v3, v4}, Lx/a/a2/y;->a(Lkotlin/coroutines/CoroutineContext;Ljava/lang/Object;)V
throw p1
:cond_3
:goto_1
invoke-virtual {v1}, Lx/a/r0;->h()Z
move-result p1
:try_end_2
.catchall {:try_start_2 .. :try_end_2} :catchall_1
if-nez p1, :cond_3
goto :goto_2
:catchall_1
move-exception p1
:try_start_3
invoke-virtual {p0, p1, v0}, Lx/a/m0;->a(Ljava/lang/Throwable;Ljava/lang/Throwable;)V
:try_end_3
.catchall {:try_start_3 .. :try_end_3} :catchall_2
:goto_2
invoke-virtual {v1, v2}, Lx/a/r0;->a(Z)V
goto :goto_3
:catchall_2
move-exception p0
invoke-virtual {v1, v2}, Lx/a/r0;->a(Z)V
throw p0
:cond_4
sget-object v0, Lw/i;->d:Lw/i$a;
invoke-interface {p0, p1}, Lkotlin/coroutines/Continuation;->resumeWith(Ljava/lang/Object;)V
:goto_3
return-void
:cond_5
const-string p0, "$this$resumeCancellable"
invoke-static {p0}, Lw/u/b/j;->a(Ljava/lang/String;)V
throw v0
.end method
.method public static final a(Lkotlin/coroutines/Continuation;Ljava/lang/Throwable;)V
.locals 7
.annotation system Ldalvik/annotation/Signature;
value = {
"<T:",
"Ljava/lang/Object;",
">(",
"Lkotlin/coroutines/Continuation<",
"-TT;>;",
"Ljava/lang/Throwable;",
")V"
}
.end annotation
const/4 v0, 0x0
if-eqz p0, :cond_6
if-eqz p1, :cond_5
instance-of v1, p0, Lx/a/j0;
if-eqz v1, :cond_4
check-cast p0, Lx/a/j0;
iget-object v1, p0, Lx/a/j0;->k:Lkotlin/coroutines/Continuation;
invoke-interface {v1}, Lkotlin/coroutines/Continuation;->getContext()Lkotlin/coroutines/CoroutineContext;
move-result-object v1
new-instance v2, Lx/a/q;
const/4 v3, 0x0
invoke-direct {v2, p1, v3}, Lx/a/q;-><init>(Ljava/lang/Throwable;Z)V
iget-object v4, p0, Lx/a/j0;->j:Lx/a/x;
invoke-virtual {v4, v1}, Lx/a/x;->a(Lkotlin/coroutines/CoroutineContext;)Z
move-result v4
const/4 v5, 0x1
if-eqz v4, :cond_0
new-instance v0, Lx/a/q;
invoke-direct {v0, p1, v3}, Lx/a/q;-><init>(Ljava/lang/Throwable;Z)V
iput-object v0, p0, Lx/a/j0;->g:Ljava/lang/Object;
iput v5, p0, Lx/a/m0;->f:I
iget-object p1, p0, Lx/a/j0;->j:Lx/a/x;
invoke-virtual {p1, v1, p0}, Lx/a/x;->a(Lkotlin/coroutines/CoroutineContext;Ljava/lang/Runnable;)V
goto/16 :goto_2
:cond_0
sget-object v1, Lx/a/t1;->b:Lx/a/t1;
invoke-virtual {v1}, Lx/a/t1;->b()Lx/a/r0;
move-result-object v1
invoke-virtual {v1}, Lx/a/r0;->f()Z
move-result v4
if-eqz v4, :cond_1
iput-object v2, p0, Lx/a/j0;->g:Ljava/lang/Object;
iput v5, p0, Lx/a/m0;->f:I
invoke-virtual {v1, p0}, Lx/a/r0;->a(Lx/a/m0;)V
goto :goto_2
:cond_1
invoke-virtual {v1, v5}, Lx/a/r0;->c(Z)V
:try_start_0
invoke-virtual {p0}, Lx/a/j0;->getContext()Lkotlin/coroutines/CoroutineContext;
move-result-object v2
sget-object v4, Lkotlinx/coroutines/Job;->c:Lkotlinx/coroutines/Job$a;
invoke-interface {v2, v4}, Lkotlin/coroutines/CoroutineContext;->get(Lkotlin/coroutines/CoroutineContext$b;)Lkotlin/coroutines/CoroutineContext$a;
move-result-object v2
check-cast v2, Lkotlinx/coroutines/Job;
if-eqz v2, :cond_2
invoke-interface {v2}, Lkotlinx/coroutines/Job;->a()Z
move-result v4
if-nez v4, :cond_2
invoke-interface {v2}, Lkotlinx/coroutines/Job;->b()Ljava/util/concurrent/CancellationException;
move-result-object v2
sget-object v3, Lw/i;->d:Lw/i$a;
invoke-static {v2}, Le/k/a/c/e/p/g;->createFailure(Ljava/lang/Throwable;)Ljava/lang/Object;
move-result-object v2
invoke-interface {p0, v2}, Lkotlin/coroutines/Continuation;->resumeWith(Ljava/lang/Object;)V
const/4 v3, 0x1
:cond_2
if-nez v3, :cond_3
invoke-virtual {p0}, Lx/a/j0;->getContext()Lkotlin/coroutines/CoroutineContext;
move-result-object v2
iget-object v3, p0, Lx/a/j0;->i:Ljava/lang/Object;
invoke-static {v2, v3}, Lx/a/a2/y;->b(Lkotlin/coroutines/CoroutineContext;Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v3
:try_end_0
.catchall {:try_start_0 .. :try_end_0} :catchall_1
:try_start_1
iget-object v4, p0, Lx/a/j0;->k:Lkotlin/coroutines/Continuation;
sget-object v6, Lw/i;->d:Lw/i$a;
invoke-static {p1, v4}, Le/k/a/c/e/p/g;->a(Ljava/lang/Throwable;Lkotlin/coroutines/Continuation;)Ljava/lang/Throwable;
move-result-object p1
invoke-static {p1}, Le/k/a/c/e/p/g;->createFailure(Ljava/lang/Throwable;)Ljava/lang/Object;
move-result-object p1
invoke-static {p1}, Lw/i;->constructor-impl(Ljava/lang/Object;)Ljava/lang/Object;
invoke-interface {v4, p1}, Lkotlin/coroutines/Continuation;->resumeWith(Ljava/lang/Object;)V
:try_end_1
.catchall {:try_start_1 .. :try_end_1} :catchall_0
:try_start_2
invoke-static {v2, v3}, Lx/a/a2/y;->a(Lkotlin/coroutines/CoroutineContext;Ljava/lang/Object;)V
goto :goto_0
:catchall_0
move-exception p1
invoke-static {v2, v3}, Lx/a/a2/y;->a(Lkotlin/coroutines/CoroutineContext;Ljava/lang/Object;)V
throw p1
:cond_3
:goto_0
invoke-virtual {v1}, Lx/a/r0;->h()Z
move-result p1
:try_end_2
.catchall {:try_start_2 .. :try_end_2} :catchall_1
if-nez p1, :cond_3
goto :goto_1
:catchall_1
move-exception p1
:try_start_3
invoke-virtual {p0, p1, v0}, Lx/a/m0;->a(Ljava/lang/Throwable;Ljava/lang/Throwable;)V
:try_end_3
.catchall {:try_start_3 .. :try_end_3} :catchall_2
:goto_1
invoke-virtual {v1, v5}, Lx/a/r0;->a(Z)V
goto :goto_2
:catchall_2
move-exception p0
invoke-virtual {v1, v5}, Lx/a/r0;->a(Z)V
throw p0
:cond_4
sget-object v0, Lw/i;->d:Lw/i$a;
invoke-static {p1, p0}, Le/k/a/c/e/p/g;->a(Ljava/lang/Throwable;Lkotlin/coroutines/Continuation;)Ljava/lang/Throwable;
move-result-object p1
invoke-static {p1}, Le/k/a/c/e/p/g;->createFailure(Ljava/lang/Throwable;)Ljava/lang/Object;
move-result-object p1
invoke-interface {p0, p1}, Lkotlin/coroutines/Continuation;->resumeWith(Ljava/lang/Object;)V
:goto_2
return-void
:cond_5
const-string p0, "exception"
invoke-static {p0}, Lw/u/b/j;->a(Ljava/lang/String;)V
throw v0
:cond_6
const-string p0, "$this$resumeCancellableWithException"
invoke-static {p0}, Lw/u/b/j;->a(Ljava/lang/String;)V
throw v0
.end method
.method public static final a(Lx/a/m0;)V
.locals 4
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Lx/a/m0<",
"*>;)V"
}
.end annotation
sget-object v0, Lx/a/t1;->b:Lx/a/t1;
invoke-virtual {v0}, Lx/a/t1;->b()Lx/a/r0;
move-result-object v0
invoke-virtual {v0}, Lx/a/r0;->f()Z
move-result v1
if-eqz v1, :cond_0
invoke-virtual {v0, p0}, Lx/a/r0;->a(Lx/a/m0;)V
goto :goto_1
:cond_0
const/4 v1, 0x1
invoke-virtual {v0, v1}, Lx/a/r0;->c(Z)V
:try_start_0
invoke-virtual {p0}, Lx/a/m0;->b()Lkotlin/coroutines/Continuation;
move-result-object v2
const/4 v3, 0x3
invoke-static {p0, v2, v3}, Lx/a/l0;->a(Lx/a/m0;Lkotlin/coroutines/Continuation;I)V
:cond_1
invoke-virtual {v0}, Lx/a/r0;->h()Z
move-result v2
:try_end_0
.catchall {:try_start_0 .. :try_end_0} :catchall_0
if-nez v2, :cond_1
goto :goto_0
:catchall_0
move-exception v2
const/4 v3, 0x0
:try_start_1
invoke-virtual {p0, v2, v3}, Lx/a/m0;->a(Ljava/lang/Throwable;Ljava/lang/Throwable;)V
:try_end_1
.catchall {:try_start_1 .. :try_end_1} :catchall_1
:goto_0
invoke-virtual {v0, v1}, Lx/a/r0;->a(Z)V
:goto_1
return-void
:catchall_1
move-exception p0
invoke-virtual {v0, v1}, Lx/a/r0;->a(Z)V
throw p0
.end method
.method public static final a(Lx/a/m0;I)V
.locals 3
.annotation system Ldalvik/annotation/Signature;
value = {
"<T:",
"Ljava/lang/Object;",
">(",
"Lx/a/m0<",
"-TT;>;I)V"
}
.end annotation
const-string v0, "$this$dispatch"
invoke-static {p0, v0}, Lw/u/b/j;->checkParameterIsNotNull(Ljava/lang/Object;Ljava/lang/String;)V
invoke-virtual {p0}, Lx/a/m0;->b()Lkotlin/coroutines/Continuation;
move-result-object v0
invoke-static {p1}, Le/k/a/c/e/p/g;->b(I)Z
move-result v1
if-eqz v1, :cond_1
instance-of v1, v0, Lx/a/j0;
if-eqz v1, :cond_1
invoke-static {p1}, Le/k/a/c/e/p/g;->a(I)Z
move-result v1
iget v2, p0, Lx/a/m0;->f:I
invoke-static {v2}, Le/k/a/c/e/p/g;->a(I)Z
move-result v2
if-ne v1, v2, :cond_1
move-object p1, v0
check-cast p1, Lx/a/j0;
iget-object p1, p1, Lx/a/j0;->j:Lx/a/x;
invoke-interface {v0}, Lkotlin/coroutines/Continuation;->getContext()Lkotlin/coroutines/CoroutineContext;
move-result-object v0
invoke-virtual {p1, v0}, Lx/a/x;->a(Lkotlin/coroutines/CoroutineContext;)Z
move-result v1
if-eqz v1, :cond_0
invoke-virtual {p1, v0, p0}, Lx/a/x;->a(Lkotlin/coroutines/CoroutineContext;Ljava/lang/Runnable;)V
goto :goto_0
:cond_0
invoke-static {p0}, Lx/a/l0;->a(Lx/a/m0;)V
goto :goto_0
:cond_1
invoke-static {p0, v0, p1}, Lx/a/l0;->a(Lx/a/m0;Lkotlin/coroutines/Continuation;I)V
:goto_0
return-void
.end method
.method public static final a(Lx/a/m0;Lkotlin/coroutines/Continuation;I)V
.locals 7
.annotation system Ldalvik/annotation/Signature;
value = {
"<T:",
"Ljava/lang/Object;",
">(",
"Lx/a/m0<",
"-TT;>;",
"Lkotlin/coroutines/Continuation<",
"-TT;>;I)V"
}
.end annotation
const/4 v0, 0x0
if-eqz p0, :cond_e
if-eqz p1, :cond_d
invoke-virtual {p0}, Lx/a/m0;->c()Ljava/lang/Object;
move-result-object v1
instance-of v2, v1, Lx/a/q;
if-nez v2, :cond_0
move-object v2, v0
goto :goto_0
:cond_0
move-object v2, v1
:goto_0
check-cast v2, Lx/a/q;
if-eqz v2, :cond_1
iget-object v0, v2, Lx/a/q;->a:Ljava/lang/Throwable;
:cond_1
const-string v2, "Invalid mode "
const/4 v3, 0x4
const/4 v4, 0x3
const/4 v5, 0x2
const/4 v6, 0x1
if-eqz v0, :cond_7
if-eqz p2, :cond_6
if-eq p2, v6, :cond_5
if-eq p2, v5, :cond_4
if-eq p2, v4, :cond_3
if-ne p2, v3, :cond_2
goto/16 :goto_1
:cond_2
invoke-static {v2, p2}, Le/e/b/a/a;->a(Ljava/lang/String;I)Ljava/lang/String;
move-result-object p0
new-instance p1, Ljava/lang/IllegalStateException;
invoke-virtual {p0}, Ljava/lang/Object;->toString()Ljava/lang/String;
move-result-object p0
invoke-direct {p1, p0}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
throw p1
:cond_3
check-cast p1, Lx/a/j0;
invoke-virtual {p1}, Lx/a/j0;->getContext()Lkotlin/coroutines/CoroutineContext;
move-result-object p0
iget-object p2, p1, Lx/a/j0;->i:Ljava/lang/Object;
invoke-static {p0, p2}, Lx/a/a2/y;->b(Lkotlin/coroutines/CoroutineContext;Ljava/lang/Object;)Ljava/lang/Object;
move-result-object p2
:try_start_0
iget-object p1, p1, Lx/a/j0;->k:Lkotlin/coroutines/Continuation;
sget-object v1, Lw/i;->d:Lw/i$a;
invoke-static {v0, p1}, Le/k/a/c/e/p/g;->a(Ljava/lang/Throwable;Lkotlin/coroutines/Continuation;)Ljava/lang/Throwable;
move-result-object v0
invoke-static {v0}, Le/k/a/c/e/p/g;->createFailure(Ljava/lang/Throwable;)Ljava/lang/Object;
move-result-object v0
invoke-interface {p1, v0}, Lkotlin/coroutines/Continuation;->resumeWith(Ljava/lang/Object;)V
:try_end_0
.catchall {:try_start_0 .. :try_end_0} :catchall_0
invoke-static {p0, p2}, Lx/a/a2/y;->a(Lkotlin/coroutines/CoroutineContext;Ljava/lang/Object;)V
goto :goto_1
:catchall_0
move-exception p1
invoke-static {p0, p2}, Lx/a/a2/y;->a(Lkotlin/coroutines/CoroutineContext;Ljava/lang/Object;)V
throw p1
:cond_4
invoke-static {p1, v0}, Lx/a/l0;->b(Lkotlin/coroutines/Continuation;Ljava/lang/Throwable;)V
goto :goto_1
:cond_5
invoke-static {p1, v0}, Lx/a/l0;->a(Lkotlin/coroutines/Continuation;Ljava/lang/Throwable;)V
goto :goto_1
:cond_6
sget-object p0, Lw/i;->d:Lw/i$a;
invoke-static {v0}, Le/k/a/c/e/p/g;->createFailure(Ljava/lang/Throwable;)Ljava/lang/Object;
move-result-object p0
invoke-interface {p1, p0}, Lkotlin/coroutines/Continuation;->resumeWith(Ljava/lang/Object;)V
goto :goto_1
:cond_7
invoke-virtual {p0, v1}, Lx/a/m0;->a(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object p0
if-eqz p2, :cond_c
if-eq p2, v6, :cond_b
if-eq p2, v5, :cond_a
if-eq p2, v4, :cond_9
if-ne p2, v3, :cond_8
goto :goto_1
:cond_8
invoke-static {v2, p2}, Le/e/b/a/a;->a(Ljava/lang/String;I)Ljava/lang/String;
move-result-object p0
new-instance p1, Ljava/lang/IllegalStateException;
invoke-virtual {p0}, Ljava/lang/Object;->toString()Ljava/lang/String;
move-result-object p0
invoke-direct {p1, p0}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
throw p1
:cond_9
check-cast p1, Lx/a/j0;
invoke-virtual {p1}, Lx/a/j0;->getContext()Lkotlin/coroutines/CoroutineContext;
move-result-object p2
iget-object v0, p1, Lx/a/j0;->i:Ljava/lang/Object;
invoke-static {p2, v0}, Lx/a/a2/y;->b(Lkotlin/coroutines/CoroutineContext;Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v0
:try_start_1
iget-object p1, p1, Lx/a/j0;->k:Lkotlin/coroutines/Continuation;
sget-object v1, Lw/i;->d:Lw/i$a;
invoke-static {p0}, Lw/i;->constructor-impl(Ljava/lang/Object;)Ljava/lang/Object;
invoke-interface {p1, p0}, Lkotlin/coroutines/Continuation;->resumeWith(Ljava/lang/Object;)V
:try_end_1
.catchall {:try_start_1 .. :try_end_1} :catchall_1
invoke-static {p2, v0}, Lx/a/a2/y;->a(Lkotlin/coroutines/CoroutineContext;Ljava/lang/Object;)V
goto :goto_1
:catchall_1
move-exception p0
invoke-static {p2, v0}, Lx/a/a2/y;->a(Lkotlin/coroutines/CoroutineContext;Ljava/lang/Object;)V
throw p0
:cond_a
invoke-static {p1, p0}, Lx/a/l0;->b(Lkotlin/coroutines/Continuation;Ljava/lang/Object;)V
goto :goto_1
:cond_b
invoke-static {p1, p0}, Lx/a/l0;->a(Lkotlin/coroutines/Continuation;Ljava/lang/Object;)V
goto :goto_1
:cond_c
sget-object p2, Lw/i;->d:Lw/i$a;
invoke-interface {p1, p0}, Lkotlin/coroutines/Continuation;->resumeWith(Ljava/lang/Object;)V
:goto_1
return-void
:cond_d
const-string p0, "delegate"
invoke-static {p0}, Lw/u/b/j;->a(Ljava/lang/String;)V
throw v0
:cond_e
const-string p0, "$this$resume"
invoke-static {p0}, Lw/u/b/j;->a(Ljava/lang/String;)V
throw v0
.end method
.method public static final b(Lkotlin/coroutines/Continuation;Ljava/lang/Object;)V
.locals 1
.annotation system Ldalvik/annotation/Signature;
value = {
"<T:",
"Ljava/lang/Object;",
">(",
"Lkotlin/coroutines/Continuation<",
"-TT;>;TT;)V"
}
.end annotation
if-eqz p0, :cond_1
instance-of v0, p0, Lx/a/j0;
if-eqz v0, :cond_0
check-cast p0, Lx/a/j0;
iget-object p0, p0, Lx/a/j0;->k:Lkotlin/coroutines/Continuation;
sget-object v0, Lw/i;->d:Lw/i$a;
invoke-interface {p0, p1}, Lkotlin/coroutines/Continuation;->resumeWith(Ljava/lang/Object;)V
goto :goto_0
:cond_0
sget-object v0, Lw/i;->d:Lw/i$a;
invoke-interface {p0, p1}, Lkotlin/coroutines/Continuation;->resumeWith(Ljava/lang/Object;)V
:goto_0
return-void
:cond_1
const-string p0, "$this$resumeDirect"
invoke-static {p0}, Lw/u/b/j;->a(Ljava/lang/String;)V
const/4 p0, 0x0
throw p0
.end method
.method public static final b(Lkotlin/coroutines/Continuation;Ljava/lang/Throwable;)V
.locals 1
.annotation system Ldalvik/annotation/Signature;
value = {
"<T:",
"Ljava/lang/Object;",
">(",
"Lkotlin/coroutines/Continuation<",
"-TT;>;",
"Ljava/lang/Throwable;",
")V"
}
.end annotation
const/4 v0, 0x0
if-eqz p0, :cond_2
if-eqz p1, :cond_1
instance-of v0, p0, Lx/a/j0;
if-eqz v0, :cond_0
check-cast p0, Lx/a/j0;
iget-object p0, p0, Lx/a/j0;->k:Lkotlin/coroutines/Continuation;
sget-object v0, Lw/i;->d:Lw/i$a;
invoke-static {p1, p0}, Le/k/a/c/e/p/g;->a(Ljava/lang/Throwable;Lkotlin/coroutines/Continuation;)Ljava/lang/Throwable;
move-result-object p1
invoke-static {p1}, Le/k/a/c/e/p/g;->createFailure(Ljava/lang/Throwable;)Ljava/lang/Object;
move-result-object p1
invoke-interface {p0, p1}, Lkotlin/coroutines/Continuation;->resumeWith(Ljava/lang/Object;)V
goto :goto_0
:cond_0
sget-object v0, Lw/i;->d:Lw/i$a;
invoke-static {p1, p0}, Le/k/a/c/e/p/g;->a(Ljava/lang/Throwable;Lkotlin/coroutines/Continuation;)Ljava/lang/Throwable;
move-result-object p1
invoke-static {p1}, Le/k/a/c/e/p/g;->createFailure(Ljava/lang/Throwable;)Ljava/lang/Object;
move-result-object p1
invoke-interface {p0, p1}, Lkotlin/coroutines/Continuation;->resumeWith(Ljava/lang/Object;)V
:goto_0
return-void
:cond_1
const-string p0, "exception"
invoke-static {p0}, Lw/u/b/j;->a(Ljava/lang/String;)V
throw v0
:cond_2
const-string p0, "$this$resumeDirectWithException"
invoke-static {p0}, Lw/u/b/j;->a(Ljava/lang/String;)V
throw v0
.end method

View file

@ -0,0 +1,147 @@
.class public final Lx/a/l1;
.super Lx/a/a2/l;
.source "JobSupport.kt"
# interfaces
.implements Lx/a/y0;
# direct methods
.method public constructor <init>()V
.locals 0
invoke-direct {p0}, Lx/a/a2/l;-><init>()V
return-void
.end method
# virtual methods
.method public final a(Ljava/lang/String;)Ljava/lang/String;
.locals 5
if-eqz p1, :cond_4
new-instance v0, Ljava/lang/StringBuilder;
invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
const-string v1, "List{"
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v0, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string p1, "}["
invoke-virtual {v0, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p0}, Lx/a/a2/n;->b()Ljava/lang/Object;
move-result-object p1
if-eqz p1, :cond_3
check-cast p1, Lx/a/a2/n;
const/4 v1, 0x1
const/4 v2, 0x1
:goto_0
invoke-static {p1, p0}, Lw/u/b/j;->areEqual(Ljava/lang/Object;Ljava/lang/Object;)Z
move-result v3
xor-int/2addr v3, v1
if-eqz v3, :cond_2
instance-of v3, p1, Lx/a/g1;
if-eqz v3, :cond_1
move-object v3, p1
check-cast v3, Lx/a/g1;
if-eqz v2, :cond_0
const/4 v2, 0x0
goto :goto_1
:cond_0
const-string v4, ", "
invoke-virtual {v0, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
:goto_1
invoke-virtual {v0, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
:cond_1
invoke-virtual {p1}, Lx/a/a2/n;->c()Lx/a/a2/n;
move-result-object p1
goto :goto_0
:cond_2
const-string p1, "]"
invoke-virtual {v0, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p1
const-string v0, "StringBuilder().apply(builderAction).toString()"
invoke-static {p1, v0}, Lw/u/b/j;->checkExpressionValueIsNotNull(Ljava/lang/Object;Ljava/lang/String;)V
return-object p1
:cond_3
new-instance p1, Lw/l;
const-string v0, "null cannot be cast to non-null type kotlinx.coroutines.internal.Node /* = kotlinx.coroutines.internal.LockFreeLinkedListNode */"
invoke-direct {p1, v0}, Lw/l;-><init>(Ljava/lang/String;)V
throw p1
:cond_4
const-string p1, "state"
invoke-static {p1}, Lw/u/b/j;->a(Ljava/lang/String;)V
const/4 p1, 0x0
throw p1
.end method
.method public a()Z
.locals 1
const/4 v0, 0x1
return v0
.end method
.method public getList()Lx/a/l1;
.locals 0
return-object p0
.end method
.method public toString()Ljava/lang/String;
.locals 1
const-string v0, "Active"
invoke-virtual {p0, v0}, Lx/a/l1;->a(Ljava/lang/String;)Ljava/lang/String;
move-result-object v0
return-object v0
.end method

View file

@ -0,0 +1,159 @@
.class public final Lx/a/m;
.super Lx/a/e1;
.source "JobSupport.kt"
# interfaces
.implements Lx/a/l;
# annotations
.annotation system Ldalvik/annotation/Signature;
value = {
"Lx/a/e1<",
"Lx/a/h1;",
">;",
"Lx/a/l;"
}
.end annotation
# instance fields
.field public final h:Lx/a/n;
# direct methods
.method public constructor <init>(Lx/a/h1;Lx/a/n;)V
.locals 1
const/4 v0, 0x0
if-eqz p1, :cond_1
if-eqz p2, :cond_0
invoke-direct {p0, p1}, Lx/a/e1;-><init>(Lkotlinx/coroutines/Job;)V
iput-object p2, p0, Lx/a/m;->h:Lx/a/n;
return-void
:cond_0
const-string p1, "childJob"
invoke-static {p1}, Lw/u/b/j;->a(Ljava/lang/String;)V
throw v0
:cond_1
const-string p1, "parent"
invoke-static {p1}, Lw/u/b/j;->a(Ljava/lang/String;)V
throw v0
.end method
# virtual methods
.method public a(Ljava/lang/Throwable;)Z
.locals 1
if-eqz p1, :cond_1
iget-object v0, p0, Lx/a/g1;->g:Lkotlinx/coroutines/Job;
check-cast v0, Lx/a/h1;
invoke-virtual {v0, p1}, Lx/a/h1;->a(Ljava/lang/Object;)Z
move-result p1
if-eqz p1, :cond_0
invoke-virtual {v0}, Lx/a/h1;->e()Z
move-result p1
if-eqz p1, :cond_0
const/4 p1, 0x1
goto :goto_0
:cond_0
const/4 p1, 0x0
:goto_0
return p1
:cond_1
const-string p1, "cause"
invoke-static {p1}, Lw/u/b/j;->a(Ljava/lang/String;)V
const/4 p1, 0x0
throw p1
.end method
.method public b(Ljava/lang/Throwable;)V
.locals 1
iget-object p1, p0, Lx/a/m;->h:Lx/a/n;
iget-object v0, p0, Lx/a/g1;->g:Lkotlinx/coroutines/Job;
check-cast v0, Lx/a/o1;
check-cast p1, Lx/a/h1;
if-eqz v0, :cond_0
invoke-virtual {p1, v0}, Lx/a/h1;->a(Ljava/lang/Object;)Z
return-void
:cond_0
const-string p1, "parentJob"
invoke-static {p1}, Lw/u/b/j;->a(Ljava/lang/String;)V
const/4 p1, 0x0
throw p1
.end method
.method public bridge synthetic invoke(Ljava/lang/Object;)Ljava/lang/Object;
.locals 0
check-cast p1, Ljava/lang/Throwable;
invoke-virtual {p0, p1}, Lx/a/m;->b(Ljava/lang/Throwable;)V
sget-object p1, Lkotlin/Unit;->a:Lkotlin/Unit;
return-object p1
.end method
.method public toString()Ljava/lang/String;
.locals 2
const-string v0, "ChildHandle["
invoke-static {v0}, Le/e/b/a/a;->a(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v0
iget-object v1, p0, Lx/a/m;->h:Lx/a/n;
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
const/16 v1, 0x5d
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
return-object v0
.end method

View file

@ -0,0 +1,390 @@
.class public abstract Lx/a/m0;
.super Lx/a/b2/i;
.source "Dispatched.kt"
# annotations
.annotation system Ldalvik/annotation/Signature;
value = {
"<T:",
"Ljava/lang/Object;",
">",
"Lx/a/b2/i;"
}
.end annotation
# instance fields
.field public f:I
# direct methods
.method public constructor <init>(I)V
.locals 3
sget-object v0, Lx/a/b2/h;->e:Lx/a/b2/h;
const-wide/16 v1, 0x0
invoke-direct {p0, v1, v2, v0}, Lx/a/b2/i;-><init>(JLx/a/b2/j;)V
iput p1, p0, Lx/a/m0;->f:I
return-void
.end method
# virtual methods
.method public a(Ljava/lang/Object;)Ljava/lang/Object;
.locals 0
.annotation system Ldalvik/annotation/Signature;
value = {
"<T:",
"Ljava/lang/Object;",
">(",
"Ljava/lang/Object;",
")TT;"
}
.end annotation
return-object p1
.end method
.method public a(Ljava/lang/Object;Ljava/lang/Throwable;)V
.locals 0
if-eqz p2, :cond_0
return-void
:cond_0
const-string p1, "cause"
invoke-static {p1}, Lw/u/b/j;->a(Ljava/lang/String;)V
const/4 p1, 0x0
throw p1
.end method
.method public final a(Ljava/lang/Throwable;Ljava/lang/Throwable;)V
.locals 2
if-nez p1, :cond_0
if-nez p2, :cond_0
return-void
:cond_0
if-eqz p1, :cond_1
if-eqz p2, :cond_1
invoke-static {p1, p2}, Le/k/a/c/e/p/g;->addSuppressed(Ljava/lang/Throwable;Ljava/lang/Throwable;)V
:cond_1
if-eqz p1, :cond_2
goto :goto_0
:cond_2
move-object p1, p2
:goto_0
new-instance p2, Lx/a/d0;
new-instance v0, Ljava/lang/StringBuilder;
invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
const-string v1, "Fatal exception in coroutines machinery for "
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v0, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
const-string v1, ". "
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string v1, "Please read KDoc to \'handleFatalException\' method and report this incident to maintainers"
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
if-eqz p1, :cond_3
invoke-direct {p2, v0, p1}, Lx/a/d0;-><init>(Ljava/lang/String;Ljava/lang/Throwable;)V
invoke-virtual {p0}, Lx/a/m0;->b()Lkotlin/coroutines/Continuation;
move-result-object p1
invoke-interface {p1}, Lkotlin/coroutines/Continuation;->getContext()Lkotlin/coroutines/CoroutineContext;
move-result-object p1
invoke-static {p1, p2}, Le/k/a/c/e/p/g;->a(Lkotlin/coroutines/CoroutineContext;Ljava/lang/Throwable;)V
return-void
:cond_3
invoke-static {}, Lw/u/b/j;->throwNpe()V
const/4 p1, 0x0
throw p1
.end method
.method public abstract b()Lkotlin/coroutines/Continuation;
.annotation system Ldalvik/annotation/Signature;
value = {
"()",
"Lkotlin/coroutines/Continuation<",
"TT;>;"
}
.end annotation
.end method
.method public abstract c()Ljava/lang/Object;
.end method
.method public final run()V
.locals 8
iget-object v0, p0, Lx/a/b2/i;->e:Lx/a/b2/j;
:try_start_0
invoke-virtual {p0}, Lx/a/m0;->b()Lkotlin/coroutines/Continuation;
move-result-object v1
if-eqz v1, :cond_5
check-cast v1, Lx/a/j0;
iget-object v2, v1, Lx/a/j0;->k:Lkotlin/coroutines/Continuation;
invoke-interface {v2}, Lkotlin/coroutines/Continuation;->getContext()Lkotlin/coroutines/CoroutineContext;
move-result-object v3
iget v4, p0, Lx/a/m0;->f:I
invoke-static {v4}, Le/k/a/c/e/p/g;->a(I)Z
move-result v4
const/4 v5, 0x0
if-eqz v4, :cond_0
sget-object v4, Lkotlinx/coroutines/Job;->c:Lkotlinx/coroutines/Job$a;
invoke-interface {v3, v4}, Lkotlin/coroutines/CoroutineContext;->get(Lkotlin/coroutines/CoroutineContext$b;)Lkotlin/coroutines/CoroutineContext$a;
move-result-object v4
check-cast v4, Lkotlinx/coroutines/Job;
goto :goto_0
:cond_0
move-object v4, v5
:goto_0
invoke-virtual {p0}, Lx/a/m0;->c()Ljava/lang/Object;
move-result-object v6
iget-object v1, v1, Lx/a/j0;->i:Ljava/lang/Object;
invoke-static {v3, v1}, Lx/a/a2/y;->b(Lkotlin/coroutines/CoroutineContext;Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v1
:try_end_0
.catchall {:try_start_0 .. :try_end_0} :catchall_2
if-eqz v4, :cond_1
:try_start_1
invoke-interface {v4}, Lkotlinx/coroutines/Job;->a()Z
move-result v7
if-nez v7, :cond_1
invoke-interface {v4}, Lkotlinx/coroutines/Job;->b()Ljava/util/concurrent/CancellationException;
move-result-object v4
invoke-virtual {p0, v6, v4}, Lx/a/m0;->a(Ljava/lang/Object;Ljava/lang/Throwable;)V
sget-object v6, Lw/i;->d:Lw/i$a;
invoke-static {v4, v2}, Le/k/a/c/e/p/g;->a(Ljava/lang/Throwable;Lkotlin/coroutines/Continuation;)Ljava/lang/Throwable;
move-result-object v4
invoke-static {v4}, Le/k/a/c/e/p/g;->createFailure(Ljava/lang/Throwable;)Ljava/lang/Object;
move-result-object v4
invoke-static {v4}, Lw/i;->constructor-impl(Ljava/lang/Object;)Ljava/lang/Object;
invoke-interface {v2, v4}, Lkotlin/coroutines/Continuation;->resumeWith(Ljava/lang/Object;)V
goto :goto_3
:cond_1
instance-of v4, v6, Lx/a/q;
if-nez v4, :cond_2
move-object v4, v5
goto :goto_1
:cond_2
move-object v4, v6
:goto_1
check-cast v4, Lx/a/q;
if-eqz v4, :cond_3
iget-object v4, v4, Lx/a/q;->a:Ljava/lang/Throwable;
goto :goto_2
:catchall_0
move-exception v2
goto :goto_5
:cond_3
move-object v4, v5
:goto_2
if-eqz v4, :cond_4
sget-object v6, Lw/i;->d:Lw/i$a;
invoke-static {v4, v2}, Le/k/a/c/e/p/g;->a(Ljava/lang/Throwable;Lkotlin/coroutines/Continuation;)Ljava/lang/Throwable;
move-result-object v4
invoke-static {v4}, Le/k/a/c/e/p/g;->createFailure(Ljava/lang/Throwable;)Ljava/lang/Object;
move-result-object v4
invoke-static {v4}, Lw/i;->constructor-impl(Ljava/lang/Object;)Ljava/lang/Object;
invoke-interface {v2, v4}, Lkotlin/coroutines/Continuation;->resumeWith(Ljava/lang/Object;)V
goto :goto_3
:cond_4
invoke-virtual {p0, v6}, Lx/a/m0;->a(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v4
sget-object v6, Lw/i;->d:Lw/i$a;
invoke-static {v4}, Lw/i;->constructor-impl(Ljava/lang/Object;)Ljava/lang/Object;
invoke-interface {v2, v4}, Lkotlin/coroutines/Continuation;->resumeWith(Ljava/lang/Object;)V
:try_end_1
.catchall {:try_start_1 .. :try_end_1} :catchall_0
:goto_3
:try_start_2
invoke-static {v3, v1}, Lx/a/a2/y;->a(Lkotlin/coroutines/CoroutineContext;Ljava/lang/Object;)V
:try_end_2
.catchall {:try_start_2 .. :try_end_2} :catchall_2
:try_start_3
sget-object v1, Lw/i;->d:Lw/i$a;
invoke-interface {v0}, Lx/a/b2/j;->c()V
sget-object v0, Lkotlin/Unit;->a:Lkotlin/Unit;
:try_end_3
.catchall {:try_start_3 .. :try_end_3} :catchall_1
goto :goto_4
:catchall_1
move-exception v0
sget-object v1, Lw/i;->d:Lw/i$a;
invoke-static {v0}, Le/k/a/c/e/p/g;->createFailure(Ljava/lang/Throwable;)Ljava/lang/Object;
move-result-object v0
:goto_4
invoke-static {v0}, Lw/i;->exceptionOrNull-impl(Ljava/lang/Object;)Ljava/lang/Throwable;
move-result-object v0
invoke-virtual {p0, v5, v0}, Lx/a/m0;->a(Ljava/lang/Throwable;Ljava/lang/Throwable;)V
goto :goto_7
:goto_5
:try_start_4
invoke-static {v3, v1}, Lx/a/a2/y;->a(Lkotlin/coroutines/CoroutineContext;Ljava/lang/Object;)V
throw v2
:cond_5
new-instance v1, Lw/l;
const-string v2, "null cannot be cast to non-null type kotlinx.coroutines.DispatchedContinuation<T>"
invoke-direct {v1, v2}, Lw/l;-><init>(Ljava/lang/String;)V
throw v1
:try_end_4
.catchall {:try_start_4 .. :try_end_4} :catchall_2
:catchall_2
move-exception v1
:try_start_5
sget-object v2, Lw/i;->d:Lw/i$a;
invoke-interface {v0}, Lx/a/b2/j;->c()V
sget-object v0, Lkotlin/Unit;->a:Lkotlin/Unit;
invoke-static {v0}, Lw/i;->constructor-impl(Ljava/lang/Object;)Ljava/lang/Object;
:try_end_5
.catchall {:try_start_5 .. :try_end_5} :catchall_3
goto :goto_6
:catchall_3
move-exception v0
sget-object v2, Lw/i;->d:Lw/i$a;
invoke-static {v0}, Le/k/a/c/e/p/g;->createFailure(Ljava/lang/Throwable;)Ljava/lang/Object;
move-result-object v0
:goto_6
invoke-static {v0}, Lw/i;->exceptionOrNull-impl(Ljava/lang/Object;)Ljava/lang/Throwable;
move-result-object v0
invoke-virtual {p0, v1, v0}, Lx/a/m0;->a(Ljava/lang/Throwable;Ljava/lang/Throwable;)V
:goto_7
return-void
.end method

View file

@ -0,0 +1,68 @@
.class public final Lx/a/m1;
.super Ljava/lang/Object;
.source "Job.kt"
# interfaces
.implements Lx/a/o0;
.implements Lx/a/l;
# static fields
.field public static final d:Lx/a/m1;
# direct methods
.method public static constructor <clinit>()V
.locals 1
new-instance v0, Lx/a/m1;
invoke-direct {v0}, Lx/a/m1;-><init>()V
sput-object v0, Lx/a/m1;->d:Lx/a/m1;
return-void
.end method
.method public constructor <init>()V
.locals 0
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
# virtual methods
.method public a(Ljava/lang/Throwable;)Z
.locals 0
if-eqz p1, :cond_0
const/4 p1, 0x0
return p1
:cond_0
const-string p1, "cause"
invoke-static {p1}, Lw/u/b/j;->a(Ljava/lang/String;)V
const/4 p1, 0x0
throw p1
.end method
.method public dispose()V
.locals 0
return-void
.end method
.method public toString()Ljava/lang/String;
.locals 1
const-string v0, "NonDisposableHandle"
return-object v0
.end method

Some files were not shown because too many files have changed in this diff Show more