86 lines
2.4 KiB
Smali
86 lines
2.4 KiB
Smali
.class public final Landroidx/lifecycle/PausingDispatcher;
|
|
.super Lkotlinx/coroutines/CoroutineDispatcher;
|
|
.source "SourceFile"
|
|
|
|
|
|
# instance fields
|
|
.field public final dispatchQueue:Landroidx/lifecycle/DispatchQueue;
|
|
|
|
|
|
# direct methods
|
|
.method public constructor <init>()V
|
|
.locals 1
|
|
|
|
.line 215
|
|
invoke-direct {p0}, Lkotlinx/coroutines/CoroutineDispatcher;-><init>()V
|
|
|
|
.line 220
|
|
new-instance v0, Landroidx/lifecycle/DispatchQueue;
|
|
|
|
invoke-direct {v0}, Landroidx/lifecycle/DispatchQueue;-><init>()V
|
|
|
|
iput-object v0, p0, Landroidx/lifecycle/PausingDispatcher;->dispatchQueue:Landroidx/lifecycle/DispatchQueue;
|
|
|
|
return-void
|
|
.end method
|
|
|
|
|
|
# virtual methods
|
|
.method public dispatch(Lkotlin/coroutines/CoroutineContext;Ljava/lang/Runnable;)V
|
|
.locals 1
|
|
|
|
const-string v0, "context"
|
|
|
|
invoke-static {p1, v0}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullParameter(Ljava/lang/Object;Ljava/lang/String;)V
|
|
|
|
const-string v0, "block"
|
|
|
|
invoke-static {p2, v0}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullParameter(Ljava/lang/Object;Ljava/lang/String;)V
|
|
|
|
iget-object v0, p0, Landroidx/lifecycle/PausingDispatcher;->dispatchQueue:Landroidx/lifecycle/DispatchQueue;
|
|
|
|
.line 234
|
|
invoke-virtual {v0, p1, p2}, Landroidx/lifecycle/DispatchQueue;->dispatchAndEnqueue(Lkotlin/coroutines/CoroutineContext;Ljava/lang/Runnable;)V
|
|
|
|
return-void
|
|
.end method
|
|
|
|
.method public isDispatchNeeded(Lkotlin/coroutines/CoroutineContext;)Z
|
|
.locals 1
|
|
|
|
const-string v0, "context"
|
|
|
|
invoke-static {p1, v0}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullParameter(Ljava/lang/Object;Ljava/lang/String;)V
|
|
|
|
.line 223
|
|
invoke-static {}, Lkotlinx/coroutines/Dispatchers;->getMain()Lkotlinx/coroutines/MainCoroutineDispatcher;
|
|
|
|
move-result-object v0
|
|
|
|
invoke-virtual {v0}, Lkotlinx/coroutines/MainCoroutineDispatcher;->getImmediate()Lkotlinx/coroutines/MainCoroutineDispatcher;
|
|
|
|
move-result-object v0
|
|
|
|
invoke-virtual {v0, p1}, Lkotlinx/coroutines/CoroutineDispatcher;->isDispatchNeeded(Lkotlin/coroutines/CoroutineContext;)Z
|
|
|
|
move-result p1
|
|
|
|
const/4 v0, 0x1
|
|
|
|
if-eqz p1, :cond_0
|
|
|
|
return v0
|
|
|
|
:cond_0
|
|
iget-object p1, p0, Landroidx/lifecycle/PausingDispatcher;->dispatchQueue:Landroidx/lifecycle/DispatchQueue;
|
|
|
|
.line 230
|
|
invoke-virtual {p1}, Landroidx/lifecycle/DispatchQueue;->canRun()Z
|
|
|
|
move-result p1
|
|
|
|
xor-int/2addr p1, v0
|
|
|
|
return p1
|
|
.end method
|