diff options
Diffstat (limited to 'kotlinx-coroutines-core/common/src/CoroutineName.kt')
-rw-r--r-- | kotlinx-coroutines-core/common/src/CoroutineName.kt | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/kotlinx-coroutines-core/common/src/CoroutineName.kt b/kotlinx-coroutines-core/common/src/CoroutineName.kt new file mode 100644 index 00000000..4a7e9ea4 --- /dev/null +++ b/kotlinx-coroutines-core/common/src/CoroutineName.kt @@ -0,0 +1,29 @@ +/* + * Copyright 2016-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license. + */ + +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<CoroutineName> + + /** + * Returns a string representation of the object. + */ + override fun toString(): String = "CoroutineName($name)" +} |