542 lines
12 KiB
Smali
542 lines
12 KiB
Smali
.class public abstract Lkotlinx/coroutines/j1$c;
|
|
.super Ljava/lang/Object;
|
|
.source "EventLoop.common.kt"
|
|
|
|
# interfaces
|
|
.implements Ljava/lang/Runnable;
|
|
.implements Ljava/lang/Comparable;
|
|
.implements Lkotlinx/coroutines/e1;
|
|
.implements Lkotlinx/coroutines/internal/r0;
|
|
|
|
|
|
# annotations
|
|
.annotation system Ldalvik/annotation/EnclosingClass;
|
|
value = Lkotlinx/coroutines/j1;
|
|
.end annotation
|
|
|
|
.annotation system Ldalvik/annotation/InnerClass;
|
|
accessFlags = 0x409
|
|
name = "c"
|
|
.end annotation
|
|
|
|
.annotation system Ldalvik/annotation/Signature;
|
|
value = {
|
|
"Ljava/lang/Object;",
|
|
"Ljava/lang/Runnable;",
|
|
"Ljava/lang/Comparable<",
|
|
"Lkotlinx/coroutines/j1$c;",
|
|
">;",
|
|
"Lkotlinx/coroutines/e1;",
|
|
"Lkotlinx/coroutines/internal/r0;"
|
|
}
|
|
.end annotation
|
|
|
|
.annotation system Ldalvik/annotation/SourceDebugExtension;
|
|
value = "SMAP\nEventLoop.common.kt\nKotlin\n*S Kotlin\n*F\n+ 1 EventLoop.common.kt\nkotlinx/coroutines/EventLoopImplBase$DelayedTask\n+ 2 ThreadSafeHeap.kt\nkotlinx/coroutines/internal/ThreadSafeHeap\n+ 3 Synchronized.kt\nkotlinx/coroutines/internal/SynchronizedKt\n*L\n1#1,529:1\n64#2:530\n65#2,7:532\n20#3:531\n*E\n*S KotlinDebug\n*F\n+ 1 EventLoop.common.kt\nkotlinx/coroutines/EventLoopImplBase$DelayedTask\n*L\n433#1:530\n433#1,7:532\n433#1:531\n*E\n"
|
|
.end annotation
|
|
|
|
.annotation runtime Lkotlin/Metadata;
|
|
bv = {}
|
|
d1 = {
|
|
"\u0000V\n\u0002\u0018\u0002\n\u0002\u0018\u0002\n\u0002\u0018\u0002\n\u0002\u0010\u000f\n\u0002\u0018\u0002\n\u0002\u0018\u0002\n\u0000\n\u0002\u0010\u0008\n\u0000\n\u0002\u0010\t\n\u0000\n\u0002\u0010\u000b\n\u0000\n\u0002\u0018\u0002\n\u0000\n\u0002\u0018\u0002\n\u0002\u0008\u0002\n\u0002\u0018\u0002\n\u0000\n\u0002\u0010\u000e\n\u0000\n\u0002\u0010\u0000\n\u0002\u0008\u000c\n\u0002\u0018\u0002\n\u0002\u0008\u0007\u0008 \u0018\u00002\u00060\u0001j\u0002`\u00022\u0008\u0012\u0004\u0012\u00020\u00000\u00032\u00020\u00042\u00020\u0005B\u000f\u0012\u0006\u0010\"\u001a\u00020\t\u00a2\u0006\u0004\u0008(\u0010)J\u0011\u0010\u0008\u001a\u00020\u00072\u0006\u0010\u0006\u001a\u00020\u0000H\u0096\u0002J\u000e\u0010\u000c\u001a\u00020\u000b2\u0006\u0010\n\u001a\u00020\tJ\u001e\u0010\u0011\u001a\u00020\u00072\u0006\u0010\n\u001a\u00020\t2\u0006\u0010\u000e\u001a\u00020\r2\u0006\u0010\u0010\u001a\u00020\u000fJ\u0006\u0010\u0013\u001a\u00020\u0012J\u0008\u0010\u0015\u001a\u00020\u0014H\u0016R\u0018\u0010\u0019\u001a\u0004\u0018\u00010\u00168\u0002@\u0002X\u0082\u000e\u00a2\u0006\u0006\n\u0004\u0008\u0017\u0010\u0018R\"\u0010 \u001a\u00020\u00078\u0016@\u0016X\u0096\u000e\u00a2\u0006\u0012\n\u0004\u0008\u001a\u0010\u001b\u001a\u0004\u0008\u001c\u0010\u001d\"\u0004\u0008\u001e\u0010\u001fR\u0016\u0010\"\u001a\u00020\t8\u0006@\u0006X\u0087\u000e\u00a2\u0006\u0006\n\u0004\u0008\u0008\u0010!R0\u0010\'\u001a\u0008\u0012\u0002\u0008\u0003\u0018\u00010#2\u000c\u0010$\u001a\u0008\u0012\u0002\u0008\u0003\u0018\u00010#8V@VX\u0096\u000e\u00a2\u0006\u000c\u001a\u0004\u0008\u001a\u0010%\"\u0004\u0008\u0017\u0010&\u00a8\u0006*"
|
|
}
|
|
d2 = {
|
|
"Lkotlinx/coroutines/j1$c;",
|
|
"Ljava/lang/Runnable;",
|
|
"Lkotlinx/coroutines/Runnable;",
|
|
"",
|
|
"Lkotlinx/coroutines/e1;",
|
|
"Lkotlinx/coroutines/internal/r0;",
|
|
"other",
|
|
"",
|
|
"c",
|
|
"",
|
|
"now",
|
|
"",
|
|
"f",
|
|
"Lkotlinx/coroutines/j1$d;",
|
|
"delayed",
|
|
"Lkotlinx/coroutines/j1;",
|
|
"eventLoop",
|
|
"e",
|
|
"Lkotlin/d1;",
|
|
"dispose",
|
|
"",
|
|
"toString",
|
|
"",
|
|
"a",
|
|
"Ljava/lang/Object;",
|
|
"_heap",
|
|
"b",
|
|
"I",
|
|
"getIndex",
|
|
"()I",
|
|
"setIndex",
|
|
"(I)V",
|
|
"index",
|
|
"J",
|
|
"nanoTime",
|
|
"Lkotlinx/coroutines/internal/q0;",
|
|
"value",
|
|
"()Lkotlinx/coroutines/internal/q0;",
|
|
"(Lkotlinx/coroutines/internal/q0;)V",
|
|
"heap",
|
|
"<init>",
|
|
"(J)V",
|
|
"kotlinx-coroutines-core"
|
|
}
|
|
k = 0x1
|
|
mv = {
|
|
0x1,
|
|
0x4,
|
|
0x0
|
|
}
|
|
.end annotation
|
|
|
|
|
|
# instance fields
|
|
.field public a:Ljava/lang/Object;
|
|
|
|
.field public b:I
|
|
|
|
.field public c:J
|
|
.annotation build Lkotlin/jvm/JvmField;
|
|
.end annotation
|
|
.end field
|
|
|
|
|
|
# direct methods
|
|
.method public constructor <init>(J)V
|
|
.locals 0
|
|
|
|
.line 1
|
|
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
|
|
|
|
iput-wide p1, p0, Lkotlinx/coroutines/j1$c;->c:J
|
|
|
|
const/4 p1, -0x1
|
|
|
|
.line 2
|
|
iput p1, p0, Lkotlinx/coroutines/j1$c;->b:I
|
|
|
|
return-void
|
|
.end method
|
|
|
|
|
|
# virtual methods
|
|
.method public a(Lkotlinx/coroutines/internal/q0;)V
|
|
.locals 2
|
|
.param p1 # Lkotlinx/coroutines/internal/q0;
|
|
.annotation build Lorg/jetbrains/annotations/Nullable;
|
|
.end annotation
|
|
.end param
|
|
.annotation system Ldalvik/annotation/Signature;
|
|
value = {
|
|
"(",
|
|
"Lkotlinx/coroutines/internal/q0<",
|
|
"*>;)V"
|
|
}
|
|
.end annotation
|
|
|
|
.line 1
|
|
iget-object v0, p0, Lkotlinx/coroutines/j1$c;->a:Ljava/lang/Object;
|
|
|
|
invoke-static {}, Lkotlinx/coroutines/m1;->b()Lkotlinx/coroutines/internal/i0;
|
|
|
|
move-result-object v1
|
|
|
|
if-eq v0, v1, :cond_0
|
|
|
|
const/4 v0, 0x1
|
|
|
|
goto :goto_0
|
|
|
|
:cond_0
|
|
const/4 v0, 0x0
|
|
|
|
:goto_0
|
|
if-eqz v0, :cond_1
|
|
|
|
.line 2
|
|
iput-object p1, p0, Lkotlinx/coroutines/j1$c;->a:Ljava/lang/Object;
|
|
|
|
return-void
|
|
|
|
.line 3
|
|
:cond_1
|
|
new-instance p1, Ljava/lang/IllegalArgumentException;
|
|
|
|
const-string v0, "Failed requirement."
|
|
|
|
invoke-virtual {v0}, Ljava/lang/Object;->toString()Ljava/lang/String;
|
|
|
|
move-result-object v0
|
|
|
|
invoke-direct {p1, v0}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
|
|
|
|
throw p1
|
|
.end method
|
|
|
|
.method public b()Lkotlinx/coroutines/internal/q0;
|
|
.locals 2
|
|
.annotation system Ldalvik/annotation/Signature;
|
|
value = {
|
|
"()",
|
|
"Lkotlinx/coroutines/internal/q0<",
|
|
"*>;"
|
|
}
|
|
.end annotation
|
|
|
|
.annotation build Lorg/jetbrains/annotations/Nullable;
|
|
.end annotation
|
|
|
|
.line 1
|
|
iget-object v0, p0, Lkotlinx/coroutines/j1$c;->a:Ljava/lang/Object;
|
|
|
|
instance-of v1, v0, Lkotlinx/coroutines/internal/q0;
|
|
|
|
if-nez v1, :cond_0
|
|
|
|
const/4 v0, 0x0
|
|
|
|
:cond_0
|
|
check-cast v0, Lkotlinx/coroutines/internal/q0;
|
|
|
|
return-object v0
|
|
.end method
|
|
|
|
.method public c(Lkotlinx/coroutines/j1$c;)I
|
|
.locals 4
|
|
.param p1 # Lkotlinx/coroutines/j1$c;
|
|
.annotation build Lorg/jetbrains/annotations/NotNull;
|
|
.end annotation
|
|
.end param
|
|
|
|
.line 1
|
|
iget-wide v0, p0, Lkotlinx/coroutines/j1$c;->c:J
|
|
|
|
iget-wide v2, p1, Lkotlinx/coroutines/j1$c;->c:J
|
|
|
|
sub-long/2addr v0, v2
|
|
|
|
const-wide/16 v2, 0x0
|
|
|
|
cmp-long p1, v0, v2
|
|
|
|
if-lez p1, :cond_0
|
|
|
|
const/4 p1, 0x1
|
|
|
|
goto :goto_0
|
|
|
|
:cond_0
|
|
if-gez p1, :cond_1
|
|
|
|
const/4 p1, -0x1
|
|
|
|
goto :goto_0
|
|
|
|
:cond_1
|
|
const/4 p1, 0x0
|
|
|
|
:goto_0
|
|
return p1
|
|
.end method
|
|
|
|
.method public bridge synthetic compareTo(Ljava/lang/Object;)I
|
|
.locals 0
|
|
|
|
.line 1
|
|
check-cast p1, Lkotlinx/coroutines/j1$c;
|
|
|
|
invoke-virtual {p0, p1}, Lkotlinx/coroutines/j1$c;->c(Lkotlinx/coroutines/j1$c;)I
|
|
|
|
move-result p1
|
|
|
|
return p1
|
|
.end method
|
|
|
|
.method public final declared-synchronized dispose()V
|
|
.locals 2
|
|
|
|
monitor-enter p0
|
|
|
|
.line 1
|
|
:try_start_0
|
|
iget-object v0, p0, Lkotlinx/coroutines/j1$c;->a:Ljava/lang/Object;
|
|
|
|
.line 2
|
|
invoke-static {}, Lkotlinx/coroutines/m1;->b()Lkotlinx/coroutines/internal/i0;
|
|
|
|
move-result-object v1
|
|
:try_end_0
|
|
.catchall {:try_start_0 .. :try_end_0} :catchall_0
|
|
|
|
if-ne v0, v1, :cond_0
|
|
|
|
monitor-exit p0
|
|
|
|
return-void
|
|
|
|
.line 3
|
|
:cond_0
|
|
:try_start_1
|
|
instance-of v1, v0, Lkotlinx/coroutines/j1$d;
|
|
|
|
if-nez v1, :cond_1
|
|
|
|
const/4 v0, 0x0
|
|
|
|
:cond_1
|
|
check-cast v0, Lkotlinx/coroutines/j1$d;
|
|
|
|
if-eqz v0, :cond_2
|
|
|
|
invoke-virtual {v0, p0}, Lkotlinx/coroutines/internal/q0;->j(Lkotlinx/coroutines/internal/r0;)Z
|
|
|
|
.line 4
|
|
:cond_2
|
|
invoke-static {}, Lkotlinx/coroutines/m1;->b()Lkotlinx/coroutines/internal/i0;
|
|
|
|
move-result-object v0
|
|
|
|
iput-object v0, p0, Lkotlinx/coroutines/j1$c;->a:Ljava/lang/Object;
|
|
:try_end_1
|
|
.catchall {:try_start_1 .. :try_end_1} :catchall_0
|
|
|
|
.line 5
|
|
monitor-exit p0
|
|
|
|
return-void
|
|
|
|
:catchall_0
|
|
move-exception v0
|
|
|
|
monitor-exit p0
|
|
|
|
throw v0
|
|
.end method
|
|
|
|
.method public final declared-synchronized e(JLkotlinx/coroutines/j1$d;Lkotlinx/coroutines/j1;)I
|
|
.locals 7
|
|
.param p3 # Lkotlinx/coroutines/j1$d;
|
|
.annotation build Lorg/jetbrains/annotations/NotNull;
|
|
.end annotation
|
|
.end param
|
|
.param p4 # Lkotlinx/coroutines/j1;
|
|
.annotation build Lorg/jetbrains/annotations/NotNull;
|
|
.end annotation
|
|
.end param
|
|
|
|
monitor-enter p0
|
|
|
|
.line 1
|
|
:try_start_0
|
|
iget-object v0, p0, Lkotlinx/coroutines/j1$c;->a:Ljava/lang/Object;
|
|
|
|
invoke-static {}, Lkotlinx/coroutines/m1;->b()Lkotlinx/coroutines/internal/i0;
|
|
|
|
move-result-object v1
|
|
:try_end_0
|
|
.catchall {:try_start_0 .. :try_end_0} :catchall_1
|
|
|
|
if-ne v0, v1, :cond_0
|
|
|
|
const/4 p1, 0x2
|
|
|
|
monitor-exit p0
|
|
|
|
return p1
|
|
|
|
.line 2
|
|
:cond_0
|
|
:try_start_1
|
|
monitor-enter p3
|
|
:try_end_1
|
|
.catchall {:try_start_1 .. :try_end_1} :catchall_1
|
|
|
|
.line 3
|
|
:try_start_2
|
|
invoke-virtual {p3}, Lkotlinx/coroutines/internal/q0;->e()Lkotlinx/coroutines/internal/r0;
|
|
|
|
move-result-object v0
|
|
|
|
check-cast v0, Lkotlinx/coroutines/j1$c;
|
|
|
|
.line 4
|
|
invoke-static {p4}, Lkotlinx/coroutines/j1;->X1(Lkotlinx/coroutines/j1;)Z
|
|
|
|
move-result p4
|
|
:try_end_2
|
|
.catchall {:try_start_2 .. :try_end_2} :catchall_0
|
|
|
|
if-eqz p4, :cond_1
|
|
|
|
const/4 p1, 0x1
|
|
|
|
:try_start_3
|
|
monitor-exit p3
|
|
:try_end_3
|
|
.catchall {:try_start_3 .. :try_end_3} :catchall_1
|
|
|
|
monitor-exit p0
|
|
|
|
return p1
|
|
|
|
:cond_1
|
|
const-wide/16 v1, 0x0
|
|
|
|
if-nez v0, :cond_2
|
|
|
|
.line 5
|
|
:try_start_4
|
|
iput-wide p1, p3, Lkotlinx/coroutines/j1$d;->b:J
|
|
|
|
goto :goto_1
|
|
|
|
.line 6
|
|
:cond_2
|
|
iget-wide v3, v0, Lkotlinx/coroutines/j1$c;->c:J
|
|
|
|
sub-long v5, v3, p1
|
|
|
|
cmp-long p4, v5, v1
|
|
|
|
if-ltz p4, :cond_3
|
|
|
|
goto :goto_0
|
|
|
|
:cond_3
|
|
move-wide p1, v3
|
|
|
|
.line 7
|
|
:goto_0
|
|
iget-wide v3, p3, Lkotlinx/coroutines/j1$d;->b:J
|
|
|
|
sub-long v3, p1, v3
|
|
|
|
cmp-long p4, v3, v1
|
|
|
|
if-lez p4, :cond_4
|
|
|
|
iput-wide p1, p3, Lkotlinx/coroutines/j1$d;->b:J
|
|
|
|
.line 8
|
|
:cond_4
|
|
:goto_1
|
|
iget-wide p1, p0, Lkotlinx/coroutines/j1$c;->c:J
|
|
|
|
iget-wide v3, p3, Lkotlinx/coroutines/j1$d;->b:J
|
|
|
|
sub-long/2addr p1, v3
|
|
|
|
cmp-long p1, p1, v1
|
|
|
|
if-gez p1, :cond_5
|
|
|
|
iput-wide v3, p0, Lkotlinx/coroutines/j1$c;->c:J
|
|
|
|
.line 9
|
|
:cond_5
|
|
invoke-virtual {p3, p0}, Lkotlinx/coroutines/internal/q0;->a(Lkotlinx/coroutines/internal/r0;)V
|
|
:try_end_4
|
|
.catchall {:try_start_4 .. :try_end_4} :catchall_0
|
|
|
|
.line 10
|
|
:try_start_5
|
|
monitor-exit p3
|
|
:try_end_5
|
|
.catchall {:try_start_5 .. :try_end_5} :catchall_1
|
|
|
|
const/4 p1, 0x0
|
|
|
|
.line 11
|
|
monitor-exit p0
|
|
|
|
return p1
|
|
|
|
:catchall_0
|
|
move-exception p1
|
|
|
|
.line 12
|
|
:try_start_6
|
|
monitor-exit p3
|
|
|
|
throw p1
|
|
:try_end_6
|
|
.catchall {:try_start_6 .. :try_end_6} :catchall_1
|
|
|
|
:catchall_1
|
|
move-exception p1
|
|
|
|
monitor-exit p0
|
|
|
|
throw p1
|
|
.end method
|
|
|
|
.method public final f(J)Z
|
|
.locals 2
|
|
|
|
.line 1
|
|
iget-wide v0, p0, Lkotlinx/coroutines/j1$c;->c:J
|
|
|
|
sub-long/2addr p1, v0
|
|
|
|
const-wide/16 v0, 0x0
|
|
|
|
cmp-long p1, p1, v0
|
|
|
|
if-ltz p1, :cond_0
|
|
|
|
const/4 p1, 0x1
|
|
|
|
goto :goto_0
|
|
|
|
:cond_0
|
|
const/4 p1, 0x0
|
|
|
|
:goto_0
|
|
return p1
|
|
.end method
|
|
|
|
.method public getIndex()I
|
|
.locals 1
|
|
|
|
.line 1
|
|
iget v0, p0, Lkotlinx/coroutines/j1$c;->b:I
|
|
|
|
return v0
|
|
.end method
|
|
|
|
.method public setIndex(I)V
|
|
.locals 0
|
|
|
|
.line 1
|
|
iput p1, p0, Lkotlinx/coroutines/j1$c;->b:I
|
|
|
|
return-void
|
|
.end method
|
|
|
|
.method public toString()Ljava/lang/String;
|
|
.locals 4
|
|
.annotation build Lorg/jetbrains/annotations/NotNull;
|
|
.end annotation
|
|
|
|
const-string v0, "Delayed[nanos="
|
|
|
|
.line 1
|
|
invoke-static {v0}, Landroid/support/v4/media/d;->a(Ljava/lang/String;)Ljava/lang/StringBuilder;
|
|
|
|
move-result-object v0
|
|
|
|
iget-wide v1, p0, Lkotlinx/coroutines/j1$c;->c:J
|
|
|
|
const/16 v3, 0x5d
|
|
|
|
invoke-static {v0, v1, v2, v3}, Lz3/a;->a(Ljava/lang/StringBuilder;JC)Ljava/lang/String;
|
|
|
|
move-result-object v0
|
|
|
|
return-object v0
|
|
.end method
|