package kotlinx.coroutines; import kotlin.coroutines.AbstractCoroutineContextElement; import kotlin.coroutines.AbstractCoroutineContextKey; import kotlin.coroutines.Continuation; import kotlin.coroutines.ContinuationInterceptor; import kotlin.coroutines.CoroutineContext; import kotlin.jvm.functions.Function1; import kotlin.jvm.internal.DefaultConstructorMarker; import kotlin.jvm.internal.Intrinsics; import kotlinx.coroutines.internal.DispatchedContinuation; import kotlinx.coroutines.internal.LimitedDispatcher; import kotlinx.coroutines.internal.LimitedDispatcherKt; /* loaded from: classes5.dex */ public abstract class CoroutineDispatcher extends AbstractCoroutineContextElement implements ContinuationInterceptor { public static final Key Key = new Key(null); /* renamed from: dispatch */ public abstract void mo4148dispatch(CoroutineContext coroutineContext, Runnable runnable); public boolean isDispatchNeeded(CoroutineContext coroutineContext) { return true; } public final CoroutineDispatcher plus(CoroutineDispatcher coroutineDispatcher) { return coroutineDispatcher; } @Override // kotlin.coroutines.AbstractCoroutineContextElement, kotlin.coroutines.CoroutineContext.Element, kotlin.coroutines.CoroutineContext public E get(CoroutineContext.Key key) { return (E) ContinuationInterceptor.DefaultImpls.get(this, key); } @Override // kotlin.coroutines.AbstractCoroutineContextElement, kotlin.coroutines.CoroutineContext public CoroutineContext minusKey(CoroutineContext.Key key) { return ContinuationInterceptor.DefaultImpls.minusKey(this, key); } public CoroutineDispatcher() { super(ContinuationInterceptor.Key); } public static final class Key extends AbstractCoroutineContextKey { public /* synthetic */ Key(DefaultConstructorMarker defaultConstructorMarker) { this(); } public Key() { super(ContinuationInterceptor.Key, new Function1() { // from class: kotlinx.coroutines.CoroutineDispatcher.Key.1 @Override // kotlin.jvm.functions.Function1 public final CoroutineDispatcher invoke(CoroutineContext.Element element) { if (element instanceof CoroutineDispatcher) { return (CoroutineDispatcher) element; } return null; } }); } } public CoroutineDispatcher limitedParallelism(int i) { LimitedDispatcherKt.checkParallelism(i); return new LimitedDispatcher(this, i); } public void dispatchYield(CoroutineContext coroutineContext, Runnable runnable) { mo4148dispatch(coroutineContext, runnable); } @Override // kotlin.coroutines.ContinuationInterceptor public final Continuation interceptContinuation(Continuation continuation) { return new DispatchedContinuation(this, continuation); } @Override // kotlin.coroutines.ContinuationInterceptor public final void releaseInterceptedContinuation(Continuation continuation) { Intrinsics.checkNotNull(continuation, "null cannot be cast to non-null type kotlinx.coroutines.internal.DispatchedContinuation<*>"); ((DispatchedContinuation) continuation).release$kotlinx_coroutines_core(); } public String toString() { return DebugStringsKt.getClassSimpleName(this) + '@' + DebugStringsKt.getHexAddress(this); } }