commonMain.CoroutineName.kt Maven / Gradle / Ivy
package kotlinx.coroutines
import kotlin.coroutines.AbstractCoroutineContextElement
import kotlin.coroutines.CoroutineContext
/**
* User-specified name of coroutine. This name is used in debugging mode.
* See [newCoroutineContext][CoroutineScope.newCoroutineContext] for the description of coroutine debugging facilities.
*/
public data class CoroutineName(
/**
* User-defined coroutine name.
*/
val name: String
) : AbstractCoroutineContextElement(CoroutineName) {
/**
* Key for [CoroutineName] instance in the coroutine context.
*/
public companion object Key : CoroutineContext.Key
/**
* Returns a string representation of the object.
*/
override fun toString(): String = "CoroutineName($name)"
}