- Added realracing3-community.apk (71.57 MB) - Removed 32-bit support (armeabi-v7a) - Only includes arm64-v8a libraries - Decompiled source code included - Added README-community.md with analysis
84 lines
3.8 KiB
Java
84 lines
3.8 KiB
Java
package kotlinx.coroutines.tasks;
|
|
|
|
import com.google.android.gms.tasks.CancellationTokenSource;
|
|
import com.google.android.gms.tasks.OnCompleteListener;
|
|
import com.google.android.gms.tasks.Task;
|
|
import java.util.concurrent.CancellationException;
|
|
import kotlin.Result;
|
|
import kotlin.ResultKt;
|
|
import kotlin.Unit;
|
|
import kotlin.coroutines.Continuation;
|
|
import kotlin.coroutines.intrinsics.IntrinsicsKt__IntrinsicsJvmKt;
|
|
import kotlin.coroutines.intrinsics.IntrinsicsKt__IntrinsicsKt;
|
|
import kotlin.coroutines.jvm.internal.DebugProbesKt;
|
|
import kotlin.jvm.functions.Function1;
|
|
import kotlinx.coroutines.CancellableContinuation;
|
|
import kotlinx.coroutines.CancellableContinuationImpl;
|
|
|
|
/* loaded from: classes5.dex */
|
|
public abstract class TasksKt {
|
|
public static final Object await(Task task, Continuation continuation) {
|
|
return awaitImpl(task, null, continuation);
|
|
}
|
|
|
|
public static final Object awaitImpl(Task task, final CancellationTokenSource cancellationTokenSource, Continuation continuation) {
|
|
Continuation intercepted;
|
|
Object coroutine_suspended;
|
|
if (task.isComplete()) {
|
|
Exception exception = task.getException();
|
|
if (exception == null) {
|
|
if (task.isCanceled()) {
|
|
throw new CancellationException("Task " + task + " was cancelled normally.");
|
|
}
|
|
return task.getResult();
|
|
}
|
|
throw exception;
|
|
}
|
|
intercepted = IntrinsicsKt__IntrinsicsJvmKt.intercepted(continuation);
|
|
final CancellableContinuationImpl cancellableContinuationImpl = new CancellableContinuationImpl(intercepted, 1);
|
|
cancellableContinuationImpl.initCancellability();
|
|
task.addOnCompleteListener(DirectExecutor.INSTANCE, new OnCompleteListener() { // from class: kotlinx.coroutines.tasks.TasksKt$awaitImpl$2$1
|
|
@Override // com.google.android.gms.tasks.OnCompleteListener
|
|
public final void onComplete(Task task2) {
|
|
Exception exception2 = task2.getException();
|
|
if (exception2 == null) {
|
|
if (task2.isCanceled()) {
|
|
CancellableContinuation.DefaultImpls.cancel$default(CancellableContinuation.this, null, 1, null);
|
|
return;
|
|
}
|
|
CancellableContinuation cancellableContinuation = CancellableContinuation.this;
|
|
Result.Companion companion = Result.Companion;
|
|
cancellableContinuation.resumeWith(Result.m4060constructorimpl(task2.getResult()));
|
|
return;
|
|
}
|
|
CancellableContinuation cancellableContinuation2 = CancellableContinuation.this;
|
|
Result.Companion companion2 = Result.Companion;
|
|
cancellableContinuation2.resumeWith(Result.m4060constructorimpl(ResultKt.createFailure(exception2)));
|
|
}
|
|
});
|
|
if (cancellationTokenSource != null) {
|
|
cancellableContinuationImpl.invokeOnCancellation(new Function1() { // from class: kotlinx.coroutines.tasks.TasksKt$awaitImpl$2$2
|
|
{
|
|
super(1);
|
|
}
|
|
|
|
@Override // kotlin.jvm.functions.Function1
|
|
public /* bridge */ /* synthetic */ Object invoke(Object obj) {
|
|
invoke((Throwable) obj);
|
|
return Unit.INSTANCE;
|
|
}
|
|
|
|
public final void invoke(Throwable th) {
|
|
CancellationTokenSource.this.cancel();
|
|
}
|
|
});
|
|
}
|
|
Object result = cancellableContinuationImpl.getResult();
|
|
coroutine_suspended = IntrinsicsKt__IntrinsicsKt.getCOROUTINE_SUSPENDED();
|
|
if (result == coroutine_suspended) {
|
|
DebugProbesKt.probeCoroutineSuspended(continuation);
|
|
}
|
|
return result;
|
|
}
|
|
}
|