Make suspendCoroutineOrReturn ordinary function

This commit is contained in:
Ilmir Usmanov
2017-11-27 17:18:19 +03:00
parent 0b37c9e83c
commit d8c4d19152
@@ -40,9 +40,8 @@ import kotlin.coroutines.experimental.*
@SinceKotlin("1.1")
@kotlin.internal.InlineOnly
@Suppress("UNUSED_PARAMETER")
// todo: this shall be ordinary function, but, unfortunately, bootstrap compiler does not have suspendCoroutineUninterceptedOrReturn and intercepted intrinsics
public inline suspend fun <T> suspendCoroutineOrReturn(crossinline block: (Continuation<T>) -> Any?): T =
throw NotImplementedError("Implementation is intrinsic")
suspendCoroutineUninterceptedOrReturn { cont -> block(cont.intercepted()) }
/**
* Obtains the current continuation instance inside suspend functions and either suspends