W3cubDocs

/Kotlin

Package kotlin.coroutines.experimental.intrinsics

Deprecated support for experimental coroutines, provided for compatibility. It's recommended to migrate to kotlin.coroutines.intrinsics API.

Properties

Platform and version requirements: JVM (1.1), JS (1.1), Native (1.1)

COROUTINE_SUSPENDED

This value is used as a return value of suspendCoroutineOrReturn block argument to state that the execution was suspended and will not return any result immediately.

val COROUTINE_SUSPENDED: Any

Functions

Platform and version requirements: JVM (1.1), JS (1.1), Native (1.1)

createCoroutineUnchecked

Creates a coroutine without receiver and with result type T. This function creates a new, fresh instance of suspendable computation every time it is invoked.

fun <T> (suspend () -> T).createCoroutineUnchecked(
    completion: Continuation<T>
): Continuation<Unit>

Creates a coroutine with receiver type R and result type T. This function creates a new, fresh instance of suspendable computation every time it is invoked.

fun <R, T> (suspend R.() -> T).createCoroutineUnchecked(
    receiver: R, 
    completion: Continuation<T>
): Continuation<Unit>
Platform and version requirements: JVM (1.2), JS (1.2), Native (1.2)

intercepted

Intercept continuation with ContinuationInterceptor.

fun <T> Continuation<T>.intercepted(): Continuation<T>
Platform and version requirements: JVM (1.1), JS (1.1), Native (1.1)

startCoroutineUninterceptedOrReturn

Starts unintercepted coroutine without receiver and with result type T and executes it until its first suspension. Returns the result of the coroutine or throws its exception if it does not suspend or COROUTINE_SUSPENDED if it suspends. In the latter case, the completion continuation is invoked when coroutine completes with result or exception. This function is designed to be used from inside of suspendCoroutineOrReturn to resume the execution of a suspended coroutine using a reference to the suspending function.

fun <T> (suspend () -> T).startCoroutineUninterceptedOrReturn(
    completion: Continuation<T>
): Any?

Starts unintercepted coroutine with receiver type R and result type T and executes it until its first suspension. Returns the result of the coroutine or throws its exception if it does not suspend or COROUTINE_SUSPENDED if it suspends. In the latter case, the completion continuation is invoked when coroutine completes with result or exception. This function is designed to be used from inside of suspendCoroutineOrReturn to resume the execution of a suspended coroutine using a reference to the suspending function.

fun <R, T> (suspend R.() -> T).startCoroutineUninterceptedOrReturn(
    receiver: R, 
    completion: Continuation<T>
): Any?
Platform and version requirements: JVM (1.1), JS (1.1), Native (1.1)

suspendCoroutineOrReturn

Obtains the current continuation instance inside suspend functions and either suspends currently running coroutine or returns result immediately without suspension.

suspend fun <T> suspendCoroutineOrReturn(
    block: (Continuation<T>) -> Any?
): T
Platform and version requirements: JVM (1.2), JS (1.2), Native (1.2)

suspendCoroutineUninterceptedOrReturn

Obtains the current continuation instance inside suspend functions and either suspends currently running coroutine or returns result immediately without suspension.

suspend fun <T> suspendCoroutineUninterceptedOrReturn(
    block: (Continuation<T>) -> Any?
): T

© 2010–2019 JetBrains s.r.o.
Licensed under the Apache License, Version 2.0.
https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.coroutines.experimental.intrinsics/index.html