package kotlinx.coroutines; import kotlin.coroutines.CoroutineContext; /* loaded from: classes5.dex */ public final class Unconfined extends CoroutineDispatcher { public static final Unconfined INSTANCE = new Unconfined(); @Override // kotlinx.coroutines.CoroutineDispatcher public boolean isDispatchNeeded(CoroutineContext coroutineContext) { return false; } @Override // kotlinx.coroutines.CoroutineDispatcher public String toString() { return "Dispatchers.Unconfined"; } @Override // kotlinx.coroutines.CoroutineDispatcher public CoroutineDispatcher limitedParallelism(int i) { throw new UnsupportedOperationException("limitedParallelism is not supported for Dispatchers.Unconfined"); } @Override // kotlinx.coroutines.CoroutineDispatcher /* renamed from: dispatch */ public void mo4148dispatch(CoroutineContext coroutineContext, Runnable runnable) { YieldContext yieldContext = (YieldContext) coroutineContext.get(YieldContext.Key); if (yieldContext != null) { yieldContext.dispatcherWasUnconfined = true; return; } throw new UnsupportedOperationException("Dispatchers.Unconfined.dispatch function can only be used by the yield function. If you wrap Unconfined dispatcher in your code, make sure you properly delegate isDispatchNeeded and dispatch calls."); } }