//arrow-fx-coroutines/arrow.fx.coroutines

Package arrow.fx.coroutines

Types

Name Summary
Atomic common interface Atomic<A>
An Atomic with an initial value of A.
CircuitBreaker common class CircuitBreaker
A CircuitBreaker is used to protect resources or services from being overloaded When a service is being overloaded, interacting with it more will only worsen its overloaded state. Especially when combined with retry mechanisms such as Schedule, in some cases simply using a back-off retry policy might not be sufficient during peak traffics.
ExitCase common sealed class ExitCase
Platform common object Platform
Race3 common sealed class Race3<out A, out B, out C>
Resource common sealed class Resource<out A>
Resource models resource allocation and releasing. It is especially useful when multiple resources that depend on each other need to be acquired and later released in reverse order. Or when you want to load independent resources in parallel.
Schedule common sealed class Schedule<Input, Output>
A common demand when working with effects is to retry or repeat them when certain circumstances happen. Usually, the retrial or repetition does not happen right away; rather, it is done based on a policy. For instance, when fetching content from a network request, we may want to retry it when it fails, using an exponential backoff algorithm, for a maximum of 15 seconds or 5 attempts, whatever happens first.
Use common inline class Use<A>(acquire: suspend () -> A)
Marker for suspend () -> A to be marked as the Use action of a Resource. Offers a convenient DSL to use Resource for simple resources.

Functions

Name Summary
asFlow common fun <A> Resource<A>.asFlow(): <[A](as-flow.html)>
runs [Resource.use](-resource/use.html) and emits [A](as-flow.html) of the resource
bracket common inline suspend fun <A, B> bracket(crossinline acquire: suspend () -> A, use: suspend (A) -> B, crossinline release: suspend (A) -> Unit): B
Describes a task with safe resource acquisition and release in the face of errors and interruption. It would be the equivalent of an async capable try/catch/finally statements in mainstream imperative languages for resource acquisition and release.
bracketCase common inline suspend fun <A, B> bracketCase(crossinline acquire: suspend () -> A, use: suspend (A) -> B, crossinline release: suspend (A, ExitCase) -> Unit): B
A way to safely acquire a resource and release in the face of errors and cancellation. It uses ExitCase to distinguish between different exit cases when releasing the acquired resource.
fixedRate common fun fixedRate(period: Long, dampen: Boolean = true, timeStampInMillis: () -> Long = { timeInMillis() }): <[Unit](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)>
Flow that emits [Unit](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html) every [period](fixed-rate.html) while taking into account how much time it takes downstream to consume the emission. If downstream takes longer to process than [period](fixed-rate.html) than it immediately emits another [Unit](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html), if you set [dampen](fixed-rate.html) to false it will send `n = downstreamTime / period`[Unit](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html) elements immediately.
common
@[ExperimentalTime](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.time/-experimental-time/index.html)
fun [fixedRate](fixed-rate.html)(period: [Duration](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.time/-duration/index.html), dampen: [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) = true, timeStampInMillis: () -> [Long](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-long/index.html) = { timeInMillis() }): <[Unit](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)>
fromAutoCloseable jvm fun <A : AutoCloseable> Resource.Companion.fromAutoCloseable(f: suspend () -> A): Resource<A>
Creates a Resource from an AutoCloseable, which uses AutoCloseable.close for releasing.
fromCloseable jvm fun <A : Closeable> Resource.Companion.fromCloseable(f: suspend () -> A): Resource<A>
Creates a Resource from an Closeable, which uses Closeable.close for releasing.
fromExecutor jvm fun Resource.Companion.fromExecutor(f: suspend () -> ExecutorService): Resource<CoroutineContext>
Creates a single threaded CoroutineContext as a Resource. Upon release an orderly shutdown of the ExecutorService takes place in which previously submitted tasks are executed, but no new tasks will be accepted.
guarantee common inline suspend fun <A> guarantee(fa: suspend () -> A, crossinline finalizer: suspend () -> Unit): A
Guarantees execution of a given finalizer after fa regardless of success, error or cancellation.
guaranteeCase common inline suspend fun <A> guaranteeCase(fa: suspend () -> A, crossinline finalizer: suspend (ExitCase) -> Unit): A
Guarantees execution of a given finalizer after fa regardless of success, error or cancellation, allowing for differentiating between exit conditions with the ExitCase argument of the finalizer.
mapIndexed common inline fun <A, B> <[A](map-indexed.html)>.[mapIndexed](map-indexed.html)(crossinline f: suspend ([Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), [A](map-indexed.html)) -> [B](map-indexed.html)): <[B](map-indexed.html)>
metered common fun <A> <[A](metered.html)>.[metered](metered.html)(period: [Long](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-long/index.html)): <[A](metered.html)>
common
@[ExperimentalTime](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.time/-experimental-time/index.html)
fun <[A](metered.html)> <[A](metered.html)>.[metered](metered.html)(period: [Duration](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.time/-duration/index.html)): <[A](metered.html)>
Flow that emits [A](metered.html) every [period](metered.html) while taking into account how much time it takes downstream to consume the emission. If downstream takes longer to process than [period](metered.html) than it immediately emits another [A](metered.html).
never common suspend fun <A> never(): A
onCancel common inline suspend fun <A> onCancel(fa: suspend () -> A, crossinline onCancel: suspend () -> Unit): A
Registers an onCancel handler after fa. onCancel is guaranteed to be called in case of cancellation, otherwise it’s ignored.
parMap common inline fun <A, B> <[A](par-map.html)>.[parMap](par-map.html)(concurrency: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html) = DEFAULT_CONCURRENCY, crossinline transform: suspend .([A](par-map.html)) -> [B](par-map.html)): <[B](par-map.html)>
Like [map](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/index.html), but will evaluate [transform](par-map.html) in parallel, emitting the results downstream in **the same order as the input stream**. The number of concurrent effects is limited by [concurrency](par-map.html).
parMapUnordered common inline fun <A, B> <[A](par-map-unordered.html)>.[parMapUnordered](par-map-unordered.html)(concurrency: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html) = DEFAULT_CONCURRENCY, crossinline transform: suspend ([A](par-map-unordered.html)) -> [B](par-map-unordered.html)): <[B](par-map-unordered.html)>
Like [map](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/index.html), but will evaluate effects in parallel, emitting the results downstream. The number of concurrent effects is limited by [concurrency](par-map-unordered.html).
parSequence common suspend fun <A> Iterable<suspend () -> A>.parSequence(): List<A>
suspend fun <A> Iterable<suspend () -> A>.parSequence(ctx: CoroutineContext = EmptyCoroutineContext): List<A>
common
@JvmName(name = “parSequenceScoped”)
suspend fun <A> Iterable<suspend .() -> [A](par-sequence.html)>.[parSequence](par-sequence.html)(): [List](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html)<[A](par-sequence.html)>
Sequences all tasks in parallel on Dispatchers.Default and return the result
common
@[JvmName](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.jvm/-jvm-name/index.html)(name = "parSequenceScoped")
suspend fun <[A](par-sequence.html)> [Iterable](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-iterable/index.html)<suspend .() -> [A](par-sequence.html)>.[parSequence](par-sequence.html)(ctx: [CoroutineContext](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.coroutines/-coroutine-context/index.html) = EmptyCoroutineContext): [List](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html)<[A](par-sequence.html)>
Sequences all tasks in parallel and return the result
parSequenceEither common suspend fun <A, B> Iterable<suspend () -> <[A](par-sequence-either.html), [B](par-sequence-either.html)>>.[parSequenceEither](par-sequence-either.html)(): <[A](par-sequence-either.html), [List](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html)<[B](par-sequence-either.html)>>
Sequences all tasks in parallel on Dispatchers.Default and return the result. If one of the tasks returns Either.Left, then it will short-circuit the operation and cancelling all this running tasks, and returning the first encountered Either.Left.
common
@[JvmName](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.jvm/-jvm-name/index.html)(name = "parSequenceEitherScoped")
suspend fun <[A](par-sequence-either.html), [B](par-sequence-either.html)> [Iterable](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-iterable/index.html)<suspend .() -> <[A](par-sequence-either.html), [B](par-sequence-either.html)>>.[parSequenceEither](par-sequence-either.html)(): <[A](par-sequence-either.html), [List](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html)<[B](par-sequence-either.html)>>
suspend fun <[A](par-sequence-either.html), [B](par-sequence-either.html)> [Iterable](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-iterable/index.html)<suspend () -> <[A](par-sequence-either.html), [B](par-sequence-either.html)>>.[parSequenceEither](par-sequence-either.html)(ctx: [CoroutineContext](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.coroutines/-coroutine-context/index.html) = EmptyCoroutineContext): <[A](par-sequence-either.html), [List](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html)<[B](par-sequence-either.html)>>
common
@[JvmName](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.jvm/-jvm-name/index.html)(name = "parSequenceEitherScoped")
suspend fun <[A](par-sequence-either.html), [B](par-sequence-either.html)> [Iterable](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-iterable/index.html)<suspend .() -> <[A](par-sequence-either.html), [B](par-sequence-either.html)>>.[parSequenceEither](par-sequence-either.html)(ctx: [CoroutineContext](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.coroutines/-coroutine-context/index.html) = EmptyCoroutineContext): <[A](par-sequence-either.html), [List](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html)<[B](par-sequence-either.html)>>
Sequences all tasks in parallel on [ctx](par-sequence-either.html) and return the result. If one of the tasks returns Either.Left, then it will short-circuit the operation and cancelling all this running tasks, and returning the first encountered Either.Left.
parSequenceEitherN common suspend fun <A, B> Iterable<suspend () -> <[A](par-sequence-either-n.html), [B](par-sequence-either-n.html)>>.[parSequenceEitherN](par-sequence-either-n.html)(n: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)): <[A](par-sequence-either-n.html), [List](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html)<[B](par-sequence-either-n.html)>>
Sequences all tasks in [n](par-sequence-either-n.html) parallel processes on Dispatchers.Default and return the result.
common
@[JvmName](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.jvm/-jvm-name/index.html)(name = "parSequenceEitherNScoped")
suspend fun <[A](par-sequence-either-n.html), [B](par-sequence-either-n.html)> [Iterable](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-iterable/index.html)<suspend .() -> <[A](par-sequence-either-n.html), [B](par-sequence-either-n.html)>>.[parSequenceEitherN](par-sequence-either-n.html)(n: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)): <[A](par-sequence-either-n.html), [List](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html)<[B](par-sequence-either-n.html)>>
suspend fun <[A](par-sequence-either-n.html), [B](par-sequence-either-n.html)> [Iterable](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-iterable/index.html)<suspend () -> <[A](par-sequence-either-n.html), [B](par-sequence-either-n.html)>>.[parSequenceEitherN](par-sequence-either-n.html)(ctx: [CoroutineContext](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.coroutines/-coroutine-context/index.html) = EmptyCoroutineContext, n: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)): <[A](par-sequence-either-n.html), [List](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html)<[B](par-sequence-either-n.html)>>
common
@[JvmName](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.jvm/-jvm-name/index.html)(name = "parSequenceEitherNScoped")
suspend fun <[A](par-sequence-either-n.html), [B](par-sequence-either-n.html)> [Iterable](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-iterable/index.html)<suspend .() -> <[A](par-sequence-either-n.html), [B](par-sequence-either-n.html)>>.[parSequenceEitherN](par-sequence-either-n.html)(ctx: [CoroutineContext](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.coroutines/-coroutine-context/index.html) = EmptyCoroutineContext, n: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)): <[A](par-sequence-either-n.html), [List](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html)<[B](par-sequence-either-n.html)>>
Sequences all tasks in [n](par-sequence-either-n.html) parallel processes on [ctx](par-sequence-either-n.html) and return the result.
parSequenceN common suspend fun <A> Iterable<suspend () -> A>.parSequenceN(n: Int): List<A>
suspend fun <A> Iterable<suspend () -> A>.parSequenceN(ctx: CoroutineContext = EmptyCoroutineContext, n: Int): List<A>
common
@JvmName(name = “parSequenceNScoped”)
suspend fun <A> Iterable<suspend .() -> [A](par-sequence-n.html)>.[parSequenceN](par-sequence-n.html)(n: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)): [List](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html)<[A](par-sequence-n.html)>
Sequences all tasks in [n](par-sequence-n.html) parallel processes on Dispatchers.Default and return the result.
common
@[JvmName](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.jvm/-jvm-name/index.html)(name = "parSequenceNScoped")
suspend fun <[A](par-sequence-n.html)> [Iterable](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-iterable/index.html)<suspend .() -> [A](par-sequence-n.html)>.[parSequenceN](par-sequence-n.html)(ctx: [CoroutineContext](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.coroutines/-coroutine-context/index.html) = EmptyCoroutineContext, n: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)): [List](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html)<[A](par-sequence-n.html)>
Sequences all tasks in [n](par-sequence-n.html) parallel processes and return the result.
parSequenceResult common suspend fun <A> Iterable<suspend () -> Result<A».parSequenceResult(ctx: CoroutineContext = EmptyCoroutineContext): Result<List<A»
common
@JvmName(name = “parSequenceResultScoped”)
suspend fun <A> Iterable<suspend .() -> [Result](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-result/index.html)<[A](par-sequence-result.html)>>.[parSequenceResult](par-sequence-result.html)(ctx: [CoroutineContext](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.coroutines/-coroutine-context/index.html) = EmptyCoroutineContext): [Result](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-result/index.html)<[List](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html)<[A](par-sequence-result.html)>>
Sequences all tasks in parallel on [ctx](par-sequence-result.html) and returns the result. If one or more of the tasks returns [Result.failure](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-result/failure.html) then all the [Result.failure](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-result/failure.html) results will be combined using [addSuppressed](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/index.html).
parSequenceResultN common suspend fun <A> Iterable<suspend () -> Result<A».parSequenceResultN(n: Int): Result<List<A»
suspend fun <A> Iterable<suspend () -> Result<A».parSequenceResultN(ctx: CoroutineContext = EmptyCoroutineContext, n: Int): Result<List<A»
common
@JvmName(name = “parSequenceResultNScoped”)
suspend fun <A> Iterable<suspend .() -> [Result](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-result/index.html)<[A](par-sequence-result-n.html)>>.[parSequenceResultN](par-sequence-result-n.html)(n: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)): [Result](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-result/index.html)<[List](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html)<[A](par-sequence-result-n.html)>>
@[JvmName](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.jvm/-jvm-name/index.html)(name = "parSequenceResultNScoped")
suspend fun <[A](par-sequence-result-n.html)> [Iterable](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-iterable/index.html)<suspend .() -> [Result](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-result/index.html)<[A](par-sequence-result-n.html)>>.[parSequenceResultN](par-sequence-result-n.html)(ctx: [CoroutineContext](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.coroutines/-coroutine-context/index.html) = EmptyCoroutineContext, n: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)): [Result](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-result/index.html)<[List](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html)<[A](par-sequence-result-n.html)>>
Traverses this [Iterable](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-iterable/index.html) and runs `suspend CoroutineScope.() -> Result` in [n](par-sequence-result-n.html) parallel operations on [CoroutineContext](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.coroutines/-coroutine-context/index.html). If one or more of the tasks returns [Result.failure](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-result/failure.html) then all the [Result.failure](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-result/failure.html) results will be combined using [addSuppressed](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/index.html).
parSequenceValidated common suspend fun <E, A> Iterable<suspend () -> <[E](par-sequence-validated.html), [A](par-sequence-validated.html)>>.[parSequenceValidated](par-sequence-validated.html)(semigroup: <[E](par-sequence-validated.html)>): <[E](par-sequence-validated.html), [List](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html)<[A](par-sequence-validated.html)>>
suspend fun <[E](par-sequence-validated.html), [A](par-sequence-validated.html)> [Iterable](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-iterable/index.html)<suspend () -> <[E](par-sequence-validated.html), [A](par-sequence-validated.html)>>.[parSequenceValidated](par-sequence-validated.html)(ctx: [CoroutineContext](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.coroutines/-coroutine-context/index.html) = EmptyCoroutineContext, semigroup: <[E](par-sequence-validated.html)>): <[E](par-sequence-validated.html), [List](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html)<[A](par-sequence-validated.html)>>
common
@[JvmName](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.jvm/-jvm-name/index.html)(name = "parSequenceValidatedScoped")
suspend fun <[E](par-sequence-validated.html), [A](par-sequence-validated.html)> [Iterable](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-iterable/index.html)<suspend .() -> <[E](par-sequence-validated.html), [A](par-sequence-validated.html)>>.[parSequenceValidated](par-sequence-validated.html)(semigroup: <[E](par-sequence-validated.html)>): <[E](par-sequence-validated.html), [List](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html)<[A](par-sequence-validated.html)>>
Sequences all tasks in parallel on Dispatchers.Default and returns the result. If one or more of the tasks returns Validated.Invalid then all the Validated.Invalid results will be combined using [semigroup](par-sequence-validated.html).
common
@[JvmName](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.jvm/-jvm-name/index.html)(name = "parSequenceValidatedScoped")
suspend fun <[E](par-sequence-validated.html), [A](par-sequence-validated.html)> [Iterable](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-iterable/index.html)<suspend .() -> <[E](par-sequence-validated.html), [A](par-sequence-validated.html)>>.[parSequenceValidated](par-sequence-validated.html)(ctx: [CoroutineContext](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.coroutines/-coroutine-context/index.html) = EmptyCoroutineContext, semigroup: <[E](par-sequence-validated.html)>): <[E](par-sequence-validated.html), [List](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html)<[A](par-sequence-validated.html)>>
Sequences all tasks in parallel on [ctx](par-sequence-validated.html) and returns the result. If one or more of the tasks returns Validated.Invalid then all the Validated.Invalid results will be combined using [semigroup](par-sequence-validated.html).
parSequenceValidatedN common suspend fun <E, A> Iterable<suspend () -> <[E](par-sequence-validated-n.html), [A](par-sequence-validated-n.html)>>.[parSequenceValidatedN](par-sequence-validated-n.html)(semigroup: <[E](par-sequence-validated-n.html)>, n: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)): <[E](par-sequence-validated-n.html), [List](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html)<[A](par-sequence-validated-n.html)>>
suspend fun <[E](par-sequence-validated-n.html), [A](par-sequence-validated-n.html)> [Iterable](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-iterable/index.html)<suspend () -> <[E](par-sequence-validated-n.html), [A](par-sequence-validated-n.html)>>.[parSequenceValidatedN](par-sequence-validated-n.html)(ctx: [CoroutineContext](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.coroutines/-coroutine-context/index.html) = EmptyCoroutineContext, semigroup: <[E](par-sequence-validated-n.html)>, n: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)): <[E](par-sequence-validated-n.html), [List](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html)<[A](par-sequence-validated-n.html)>>
common
@[JvmName](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.jvm/-jvm-name/index.html)(name = "parSequenceValidatedNScoped")
suspend fun <[E](par-sequence-validated-n.html), [A](par-sequence-validated-n.html)> [Iterable](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-iterable/index.html)<suspend .() -> <[E](par-sequence-validated-n.html), [A](par-sequence-validated-n.html)>>.[parSequenceValidatedN](par-sequence-validated-n.html)(semigroup: <[E](par-sequence-validated-n.html)>, n: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)): <[E](par-sequence-validated-n.html), [List](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html)<[A](par-sequence-validated-n.html)>>
@[JvmName](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.jvm/-jvm-name/index.html)(name = "parSequenceValidatedNScoped")
suspend fun <[E](par-sequence-validated-n.html), [A](par-sequence-validated-n.html)> [Iterable](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-iterable/index.html)<suspend .() -> <[E](par-sequence-validated-n.html), [A](par-sequence-validated-n.html)>>.[parSequenceValidatedN](par-sequence-validated-n.html)(ctx: [CoroutineContext](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.coroutines/-coroutine-context/index.html) = EmptyCoroutineContext, semigroup: <[E](par-sequence-validated-n.html)>, n: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)): <[E](par-sequence-validated-n.html), [List](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html)<[A](par-sequence-validated-n.html)>>
Traverses this [Iterable](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-iterable/index.html) and runs f in [n](par-sequence-validated-n.html) parallel operations on [CoroutineContext](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.coroutines/-coroutine-context/index.html). If one or more of the tasks returns Validated.Invalid then all the Validated.Invalid results will be combined using [semigroup](par-sequence-validated-n.html).
parTraverse common suspend fun <A, B> Iterable<A>.parTraverse(f: suspend .([A](par-traverse.html)) -> [B](par-traverse.html)): [List](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html)<[B](par-traverse.html)>
Traverses this [Iterable](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-iterable/index.html) and runs all mappers [f](par-traverse.html) on Dispatchers.Default. Cancelling this operation cancels all running tasks.
common suspend fun <[A](par-traverse.html), [B](par-traverse.html)> [Iterable](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-iterable/index.html)<[A](par-traverse.html)>.[parTraverse](par-traverse.html)(ctx: [CoroutineContext](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.coroutines/-coroutine-context/index.html) = EmptyCoroutineContext, f: suspend .([A](par-traverse.html)) -> [B](par-traverse.html)): [List](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html)<[B](par-traverse.html)>
Traverses this [Iterable](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-iterable/index.html) and runs all mappers [f](par-traverse.html) on [CoroutineContext](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.coroutines/-coroutine-context/index.html).
parTraverseEither common suspend fun <A, B, E> Iterable<A>.parTraverseEither(f: suspend .([A](par-traverse-either.html)) -> <[E](par-traverse-either.html), [B](par-traverse-either.html)>): <[E](par-traverse-either.html), [List](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html)<[B](par-traverse-either.html)>>
Traverses this [Iterable](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-iterable/index.html) and runs all mappers [f](par-traverse-either.html) on Dispatchers.Default. If one of the [f](par-traverse-either.html) returns Either.Left, then it will short-circuit the operation and cancelling all this running [f](par-traverse-either.html), and returning the first encountered Either.Left.
common suspend fun <[A](par-traverse-either.html), [B](par-traverse-either.html), [E](par-traverse-either.html)> [Iterable](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-iterable/index.html)<[A](par-traverse-either.html)>.[parTraverseEither](par-traverse-either.html)(ctx: [CoroutineContext](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.coroutines/-coroutine-context/index.html) = EmptyCoroutineContext, f: suspend .([A](par-traverse-either.html)) -> <[E](par-traverse-either.html), [B](par-traverse-either.html)>): <[E](par-traverse-either.html), [List](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html)<[B](par-traverse-either.html)>>
Traverses this [Iterable](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-iterable/index.html) and runs all mappers [f](par-traverse-either.html) on [CoroutineContext](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.coroutines/-coroutine-context/index.html). If one of the [f](par-traverse-either.html) returns Either.Left, then it will short-circuit the operation and cancelling all this running [f](par-traverse-either.html), and returning the first encountered Either.Left.
parTraverseEitherN common suspend fun <A, B, E> Iterable<A>.parTraverseEitherN(n: Int, f: suspend .([A](par-traverse-either-n.html)) -> <[E](par-traverse-either-n.html), [B](par-traverse-either-n.html)>): <[E](par-traverse-either-n.html), [List](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html)<[B](par-traverse-either-n.html)>>
suspend fun <[A](par-traverse-either-n.html), [B](par-traverse-either-n.html), [E](par-traverse-either-n.html)> [Iterable](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-iterable/index.html)<[A](par-traverse-either-n.html)>.[parTraverseEitherN](par-traverse-either-n.html)(ctx: [CoroutineContext](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.coroutines/-coroutine-context/index.html) = EmptyCoroutineContext, n: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), f: suspend .([A](par-traverse-either-n.html)) -> <[E](par-traverse-either-n.html), [B](par-traverse-either-n.html)>): <[E](par-traverse-either-n.html), [List](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html)<[B](par-traverse-either-n.html)>>
Traverses this [Iterable](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-iterable/index.html) and runs [f](par-traverse-either-n.html) in [n](par-traverse-either-n.html) parallel operations on Dispatchers.Default. If one of the [f](par-traverse-either-n.html) returns Either.Left, then it will short-circuit the operation and cancelling all this running [f](par-traverse-either-n.html), and returning the first encountered Either.Left.
parTraverseN common suspend fun <A, B> Iterable<A>.parTraverseN(n: Int, f: suspend .([A](par-traverse-n.html)) -> [B](par-traverse-n.html)): [List](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html)<[B](par-traverse-n.html)>
Traverses this [Iterable](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-iterable/index.html) and runs [f](par-traverse-n.html) in [n](par-traverse-n.html) parallel operations on Dispatchers.Default. Cancelling this operation cancels all running tasks.
common suspend fun <[A](par-traverse-n.html), [B](par-traverse-n.html)> [Iterable](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-iterable/index.html)<[A](par-traverse-n.html)>.[parTraverseN](par-traverse-n.html)(ctx: [CoroutineContext](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.coroutines/-coroutine-context/index.html) = EmptyCoroutineContext, n: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), f: suspend .([A](par-traverse-n.html)) -> [B](par-traverse-n.html)): [List](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html)<[B](par-traverse-n.html)>
Traverses this [Iterable](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-iterable/index.html) and runs [f](par-traverse-n.html) in [n](par-traverse-n.html) parallel operations on [ctx](par-traverse-n.html).
parTraverseResult common suspend fun <A, B> Iterable<A>.parTraverseResult(f: suspend .([A](par-traverse-result.html)) -> [Result](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-result/index.html)<[B](par-traverse-result.html)>): [Result](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-result/index.html)<[List](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html)<[B](par-traverse-result.html)>>
Traverses this [Iterable](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-iterable/index.html) and runs all mappers [f](par-traverse-result.html) on Dispatchers.Default. If one or more of the [f](par-traverse-result.html) returns [Result.failure](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-result/failure.html) then all the [Result.failure](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-result/failure.html) results will be combined using [addSuppressed](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/index.html).
common suspend fun <[A](par-traverse-result.html), [B](par-traverse-result.html)> [Iterable](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-iterable/index.html)<[A](par-traverse-result.html)>.[parTraverseResult](par-traverse-result.html)(ctx: [CoroutineContext](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.coroutines/-coroutine-context/index.html) = EmptyCoroutineContext, f: suspend .([A](par-traverse-result.html)) -> [Result](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-result/index.html)<[B](par-traverse-result.html)>): [Result](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-result/index.html)<[List](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html)<[B](par-traverse-result.html)>>
Traverses this [Iterable](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-iterable/index.html) and runs all mappers [f](par-traverse-result.html) on [CoroutineContext](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.coroutines/-coroutine-context/index.html). If one or more of the [f](par-traverse-result.html) returns [Result.failure](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-result/failure.html) then all the [Result.failure](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-result/failure.html) results will be combined using [addSuppressed](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/index.html).
parTraverseResultN common suspend fun <A, B> Iterable<A>.parTraverseResultN(n: Int, f: suspend .([A](par-traverse-result-n.html)) -> [Result](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-result/index.html)<[B](par-traverse-result-n.html)>): [Result](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-result/index.html)<[List](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html)<[B](par-traverse-result-n.html)>>
Traverses this [Iterable](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-iterable/index.html) and runs [f](par-traverse-result-n.html) in [n](par-traverse-result-n.html) parallel operations on Dispatchers.Default. If one or more of the [f](par-traverse-result-n.html) returns [Result.failure](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-result/failure.html) then all the [Result.failure](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-result/failure.html) results will be combined using [addSuppressed](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/index.html).
common suspend fun <[A](par-traverse-result-n.html), [B](par-traverse-result-n.html)> [Iterable](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-iterable/index.html)<[A](par-traverse-result-n.html)>.[parTraverseResultN](par-traverse-result-n.html)(ctx: [CoroutineContext](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.coroutines/-coroutine-context/index.html) = EmptyCoroutineContext, n: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), f: suspend .([A](par-traverse-result-n.html)) -> [Result](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-result/index.html)<[B](par-traverse-result-n.html)>): [Result](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-result/index.html)<[List](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html)<[B](par-traverse-result-n.html)>>
Traverses this [Iterable](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-iterable/index.html) and runs [f](par-traverse-result-n.html) in [n](par-traverse-result-n.html) parallel operations on [CoroutineContext](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.coroutines/-coroutine-context/index.html). If one or more of the [f](par-traverse-result-n.html) returns [Result.failure](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-result/failure.html) then all the [Result.failure](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-result/failure.html) results will be combined using [addSuppressed](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/index.html).
parTraverseValidated common suspend fun <E, A, B> Iterable<A>.parTraverseValidated(semigroup: <[E](par-traverse-validated.html)>, f: suspend .([A](par-traverse-validated.html)) -> <[E](par-traverse-validated.html), [B](par-traverse-validated.html)>): <[E](par-traverse-validated.html), [List](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html)<[B](par-traverse-validated.html)>>
Traverses this [Iterable](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-iterable/index.html) and runs all mappers [f](par-traverse-validated.html) on Dispatchers.Default. If one or more of the [f](par-traverse-validated.html) returns Validated.Invalid then all the Validated.Invalid results will be combined using [semigroup](par-traverse-validated.html).
common suspend fun <[E](par-traverse-validated.html), [A](par-traverse-validated.html), [B](par-traverse-validated.html)> [Iterable](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-iterable/index.html)<[A](par-traverse-validated.html)>.[parTraverseValidated](par-traverse-validated.html)(ctx: [CoroutineContext](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.coroutines/-coroutine-context/index.html) = EmptyCoroutineContext, semigroup: <[E](par-traverse-validated.html)>, f: suspend .([A](par-traverse-validated.html)) -> <[E](par-traverse-validated.html), [B](par-traverse-validated.html)>): <[E](par-traverse-validated.html), [List](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html)<[B](par-traverse-validated.html)>>
Traverses this [Iterable](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-iterable/index.html) and runs all mappers [f](par-traverse-validated.html) on [CoroutineContext](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.coroutines/-coroutine-context/index.html). If one or more of the [f](par-traverse-validated.html) returns Validated.Invalid then all the Validated.Invalid results will be combined using [semigroup](par-traverse-validated.html).
parTraverseValidatedN common suspend fun <E, A, B> Iterable<A>.parTraverseValidatedN(semigroup: <[E](par-traverse-validated-n.html)>, n: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), f: suspend .([A](par-traverse-validated-n.html)) -> <[E](par-traverse-validated-n.html), [B](par-traverse-validated-n.html)>): <[E](par-traverse-validated-n.html), [List](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html)<[B](par-traverse-validated-n.html)>>
Traverses this [Iterable](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-iterable/index.html) and runs [f](par-traverse-validated-n.html) in [n](par-traverse-validated-n.html) parallel operations on Dispatchers.Default. If one or more of the [f](par-traverse-validated-n.html) returns Validated.Invalid then all the Validated.Invalid results will be combined using [semigroup](par-traverse-validated-n.html).
common suspend fun <[E](par-traverse-validated-n.html), [A](par-traverse-validated-n.html), [B](par-traverse-validated-n.html)> [Iterable](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-iterable/index.html)<[A](par-traverse-validated-n.html)>.[parTraverseValidatedN](par-traverse-validated-n.html)(ctx: [CoroutineContext](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.coroutines/-coroutine-context/index.html) = EmptyCoroutineContext, semigroup: <[E](par-traverse-validated-n.html)>, n: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), f: suspend .([A](par-traverse-validated-n.html)) -> <[E](par-traverse-validated-n.html), [B](par-traverse-validated-n.html)>): <[E](par-traverse-validated-n.html), [List](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html)<[B](par-traverse-validated-n.html)>>
Traverses this [Iterable](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-iterable/index.html) and runs [f](par-traverse-validated-n.html) in [n](par-traverse-validated-n.html) parallel operations on [CoroutineContext](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.coroutines/-coroutine-context/index.html). If one or more of the [f](par-traverse-validated-n.html) returns Validated.Invalid then all the Validated.Invalid results will be combined using [semigroup](par-traverse-validated-n.html).
parZip common inline suspend fun <A, B, C> parZip(crossinline fa: suspend .() -> [A](par-zip.html), crossinline fb: suspend .() -> [B](par-zip.html), crossinline f: suspend .([A](par-zip.html), [B](par-zip.html)) -> [C](par-zip.html)): [C](par-zip.html)
Runs [fa](par-zip.html), [fb](par-zip.html) in parallel on Dispatchers.Default and combines their results using the provided function.
common inline suspend fun <[A](par-zip.html), [B](par-zip.html), [C](par-zip.html)> [parZip](par-zip.html)(ctx: [CoroutineContext](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.coroutines/-coroutine-context/index.html) = EmptyCoroutineContext, crossinline fa: suspend .() -> [A](par-zip.html), crossinline fb: suspend .() -> [B](par-zip.html), crossinline f: suspend .([A](par-zip.html), [B](par-zip.html)) -> [C](par-zip.html)): [C](par-zip.html)
Runs [fa](par-zip.html), [fb](par-zip.html) in parallel on [ctx](par-zip.html) and combines their results using the provided function.
common inline suspend fun <[A](par-zip.html), [B](par-zip.html), [C](par-zip.html), [D](par-zip.html)> [parZip](par-zip.html)(crossinline fa: suspend .() -> [A](par-zip.html), crossinline fb: suspend .() -> [B](par-zip.html), crossinline fc: suspend .() -> [C](par-zip.html), crossinline f: suspend .([A](par-zip.html), [B](par-zip.html), [C](par-zip.html)) -> [D](par-zip.html)): [D](par-zip.html)
Runs [fa](par-zip.html), [fb](par-zip.html), [fc](par-zip.html) in parallel on Dispatchers.Default and combines their results using the provided function.
common inline suspend fun <[A](par-zip.html), [B](par-zip.html), [C](par-zip.html), [D](par-zip.html)> [parZip](par-zip.html)(ctx: [CoroutineContext](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.coroutines/-coroutine-context/index.html) = EmptyCoroutineContext, crossinline fa: suspend .() -> [A](par-zip.html), crossinline fb: suspend .() -> [B](par-zip.html), crossinline fc: suspend .() -> [C](par-zip.html), crossinline f: suspend .([A](par-zip.html), [B](par-zip.html), [C](par-zip.html)) -> [D](par-zip.html)): [D](par-zip.html)
Runs [fa](par-zip.html), [fb](par-zip.html), [fc](par-zip.html) in parallel on [ctx](par-zip.html) and combines their results using the provided function.
common inline suspend fun <[A](par-zip.html), [B](par-zip.html), [C](par-zip.html), [D](par-zip.html), [E](par-zip.html)> [parZip](par-zip.html)(crossinline fa: suspend .() -> [A](par-zip.html), crossinline fb: suspend .() -> [B](par-zip.html), crossinline fc: suspend .() -> [C](par-zip.html), crossinline fd: suspend .() -> [D](par-zip.html), crossinline f: suspend .([A](par-zip.html), [B](par-zip.html), [C](par-zip.html), [D](par-zip.html)) -> [E](par-zip.html)): [E](par-zip.html)
Runs [fa](par-zip.html), [fb](par-zip.html), [fc](par-zip.html), [fd](par-zip.html) in parallel on Dispatchers.Default and combines their results using the provided function.
common inline suspend fun <[A](par-zip.html), [B](par-zip.html), [C](par-zip.html), [D](par-zip.html), [E](par-zip.html)> [parZip](par-zip.html)(ctx: [CoroutineContext](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.coroutines/-coroutine-context/index.html) = EmptyCoroutineContext, crossinline fa: suspend .() -> [A](par-zip.html), crossinline fb: suspend .() -> [B](par-zip.html), crossinline fc: suspend .() -> [C](par-zip.html), crossinline fd: suspend .() -> [D](par-zip.html), crossinline f: suspend .([A](par-zip.html), [B](par-zip.html), [C](par-zip.html), [D](par-zip.html)) -> [E](par-zip.html)): [E](par-zip.html)
Runs [fa](par-zip.html), [fb](par-zip.html), [fc](par-zip.html), [fd](par-zip.html) in parallel on [ctx](par-zip.html) and combines their results using the provided function.
common inline suspend fun <[A](par-zip.html), [B](par-zip.html), [C](par-zip.html), [D](par-zip.html), [E](par-zip.html), [F](par-zip.html)> [parZip](par-zip.html)(crossinline fa: suspend .() -> [A](par-zip.html), crossinline fb: suspend .() -> [B](par-zip.html), crossinline fc: suspend .() -> [C](par-zip.html), crossinline fd: suspend .() -> [D](par-zip.html), crossinline fe: suspend .() -> [E](par-zip.html), crossinline f: suspend .([A](par-zip.html), [B](par-zip.html), [C](par-zip.html), [D](par-zip.html), [E](par-zip.html)) -> [F](par-zip.html)): [F](par-zip.html)
Runs [fa](par-zip.html), [fb](par-zip.html), [fc](par-zip.html), [fd](par-zip.html), [fe](par-zip.html) in parallel on Dispatchers.Default and combines their results using the provided function.
common inline suspend fun <[A](par-zip.html), [B](par-zip.html), [C](par-zip.html), [D](par-zip.html), [E](par-zip.html), [F](par-zip.html)> [parZip](par-zip.html)(ctx: [CoroutineContext](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.coroutines/-coroutine-context/index.html) = EmptyCoroutineContext, crossinline fa: suspend .() -> [A](par-zip.html), crossinline fb: suspend .() -> [B](par-zip.html), crossinline fc: suspend .() -> [C](par-zip.html), crossinline fd: suspend .() -> [D](par-zip.html), crossinline fe: suspend .() -> [E](par-zip.html), crossinline f: suspend .([A](par-zip.html), [B](par-zip.html), [C](par-zip.html), [D](par-zip.html), [E](par-zip.html)) -> [F](par-zip.html)): [F](par-zip.html)
Runs [fa](par-zip.html), [fb](par-zip.html), [fc](par-zip.html), [fd](par-zip.html), [fe](par-zip.html) in parallel on [ctx](par-zip.html) and combines their results using the provided function.
common inline suspend fun <[A](par-zip.html), [B](par-zip.html), [C](par-zip.html), [D](par-zip.html), [E](par-zip.html), [F](par-zip.html), [G](par-zip.html)> [parZip](par-zip.html)(crossinline fa: suspend .() -> [A](par-zip.html), crossinline fb: suspend .() -> [B](par-zip.html), crossinline fc: suspend .() -> [C](par-zip.html), crossinline fd: suspend .() -> [D](par-zip.html), crossinline fe: suspend .() -> [E](par-zip.html), crossinline ff: suspend .() -> [F](par-zip.html), crossinline f: suspend .([A](par-zip.html), [B](par-zip.html), [C](par-zip.html), [D](par-zip.html), [E](par-zip.html), [F](par-zip.html)) -> [G](par-zip.html)): [G](par-zip.html)
Runs [fa](par-zip.html), [fb](par-zip.html), [fc](par-zip.html), [fd](par-zip.html), [fe](par-zip.html), [ff](par-zip.html) in parallel on Dispatchers.Default and combines their results using the provided function.
common inline suspend fun <[A](par-zip.html), [B](par-zip.html), [C](par-zip.html), [D](par-zip.html), [E](par-zip.html), [F](par-zip.html), [G](par-zip.html)> [parZip](par-zip.html)(ctx: [CoroutineContext](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.coroutines/-coroutine-context/index.html) = EmptyCoroutineContext, crossinline fa: suspend .() -> [A](par-zip.html), crossinline fb: suspend .() -> [B](par-zip.html), crossinline fc: suspend .() -> [C](par-zip.html), crossinline fd: suspend .() -> [D](par-zip.html), crossinline fe: suspend .() -> [E](par-zip.html), crossinline ff: suspend .() -> [F](par-zip.html), crossinline f: suspend .([A](par-zip.html), [B](par-zip.html), [C](par-zip.html), [D](par-zip.html), [E](par-zip.html), [F](par-zip.html)) -> [G](par-zip.html)): [G](par-zip.html)
Runs [fa](par-zip.html), [fb](par-zip.html), [fc](par-zip.html), [fd](par-zip.html), [fe](par-zip.html), [ff](par-zip.html) in parallel on [ctx](par-zip.html) and combines their results using the provided function.
common inline suspend fun <[A](par-zip.html), [B](par-zip.html), [C](par-zip.html), [D](par-zip.html), [E](par-zip.html), [F](par-zip.html), [G](par-zip.html), [H](par-zip.html)> [parZip](par-zip.html)(crossinline fa: suspend .() -> [A](par-zip.html), crossinline fb: suspend .() -> [B](par-zip.html), crossinline fc: suspend .() -> [C](par-zip.html), crossinline fd: suspend .() -> [D](par-zip.html), crossinline fe: suspend .() -> [E](par-zip.html), crossinline ff: suspend .() -> [F](par-zip.html), crossinline fg: suspend .() -> [G](par-zip.html), crossinline f: suspend .([A](par-zip.html), [B](par-zip.html), [C](par-zip.html), [D](par-zip.html), [E](par-zip.html), [F](par-zip.html), [G](par-zip.html)) -> [H](par-zip.html)): [H](par-zip.html)
Runs [fa](par-zip.html), [fb](par-zip.html), [fc](par-zip.html), [fd](par-zip.html), [fe](par-zip.html), [ff](par-zip.html), [fg](par-zip.html) in parallel on Dispatchers.Default and combines their results using the provided function.
common inline suspend fun <[A](par-zip.html), [B](par-zip.html), [C](par-zip.html), [D](par-zip.html), [E](par-zip.html), [F](par-zip.html), [G](par-zip.html), [H](par-zip.html)> [parZip](par-zip.html)(ctx: [CoroutineContext](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.coroutines/-coroutine-context/index.html) = EmptyCoroutineContext, crossinline fa: suspend .() -> [A](par-zip.html), crossinline fb: suspend .() -> [B](par-zip.html), crossinline fc: suspend .() -> [C](par-zip.html), crossinline fd: suspend .() -> [D](par-zip.html), crossinline fe: suspend .() -> [E](par-zip.html), crossinline ff: suspend .() -> [F](par-zip.html), crossinline fg: suspend .() -> [G](par-zip.html), crossinline f: suspend .([A](par-zip.html), [B](par-zip.html), [C](par-zip.html), [D](par-zip.html), [E](par-zip.html), [F](par-zip.html), [G](par-zip.html)) -> [H](par-zip.html)): [H](par-zip.html)
Runs [fa](par-zip.html), [fb](par-zip.html), [fc](par-zip.html), [fd](par-zip.html), [fe](par-zip.html), [ff](par-zip.html), [fg](par-zip.html) in parallel on [ctx](par-zip.html) and combines their results using the provided function.
common inline suspend fun <[A](par-zip.html), [B](par-zip.html), [C](par-zip.html), [D](par-zip.html), [E](par-zip.html), [F](par-zip.html), [G](par-zip.html), [H](par-zip.html), [I](par-zip.html)> [parZip](par-zip.html)(crossinline fa: suspend .() -> [A](par-zip.html), crossinline fb: suspend .() -> [B](par-zip.html), crossinline fc: suspend .() -> [C](par-zip.html), crossinline fd: suspend .() -> [D](par-zip.html), crossinline fe: suspend .() -> [E](par-zip.html), crossinline ff: suspend .() -> [F](par-zip.html), crossinline fg: suspend .() -> [G](par-zip.html), crossinline fh: suspend .() -> [H](par-zip.html), crossinline f: suspend .([A](par-zip.html), [B](par-zip.html), [C](par-zip.html), [D](par-zip.html), [E](par-zip.html), [F](par-zip.html), [G](par-zip.html), [H](par-zip.html)) -> [I](par-zip.html)): [I](par-zip.html)
Runs [fa](par-zip.html), [fb](par-zip.html), [fc](par-zip.html), [fd](par-zip.html), [fe](par-zip.html), [ff](par-zip.html), [fg](par-zip.html), [fh](par-zip.html) in parallel on Dispatchers.Default and combines their results using the provided function.
common inline suspend fun <[A](par-zip.html), [B](par-zip.html), [C](par-zip.html), [D](par-zip.html), [E](par-zip.html), [F](par-zip.html), [G](par-zip.html), [H](par-zip.html), [I](par-zip.html)> [parZip](par-zip.html)(ctx: [CoroutineContext](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.coroutines/-coroutine-context/index.html) = EmptyCoroutineContext, crossinline fa: suspend .() -> [A](par-zip.html), crossinline fb: suspend .() -> [B](par-zip.html), crossinline fc: suspend .() -> [C](par-zip.html), crossinline fd: suspend .() -> [D](par-zip.html), crossinline fe: suspend .() -> [E](par-zip.html), crossinline ff: suspend .() -> [F](par-zip.html), crossinline fg: suspend .() -> [G](par-zip.html), crossinline fh: suspend .() -> [H](par-zip.html), crossinline f: suspend .([A](par-zip.html), [B](par-zip.html), [C](par-zip.html), [D](par-zip.html), [E](par-zip.html), [F](par-zip.html), [G](par-zip.html), [H](par-zip.html)) -> [I](par-zip.html)): [I](par-zip.html)
Runs [fa](par-zip.html), [fb](par-zip.html), [fc](par-zip.html), [fd](par-zip.html), [fe](par-zip.html), [ff](par-zip.html), [fg](par-zip.html), [fh](par-zip.html) in parallel on [ctx](par-zip.html) and combines their results using the provided function.
raceN common inline suspend fun <A, B> raceN(crossinline fa: suspend .() -> [A](race-n.html), crossinline fb: suspend .() -> [B](race-n.html)): <[A](race-n.html), [B](race-n.html)>
Races the participants [fa](race-n.html), [fb](race-n.html) in parallel on the Dispatchers.Default. The winner of the race cancels the other participants. Cancelling the operation cancels all participants. An uncancellable participant will back-pressure the result of [raceN](race-n.html).
common inline suspend fun <[A](race-n.html), [B](race-n.html)> [raceN](race-n.html)(ctx: [CoroutineContext](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.coroutines/-coroutine-context/index.html) = EmptyCoroutineContext, crossinline fa: suspend .() -> [A](race-n.html), crossinline fb: suspend .() -> [B](race-n.html)): <[A](race-n.html), [B](race-n.html)>
Races the participants [fa](race-n.html), [fb](race-n.html) on the provided [CoroutineContext](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.coroutines/-coroutine-context/index.html). The winner of the race cancels the other participants. Cancelling the operation cancels all participants.
common inline suspend fun <[A](race-n.html), [B](race-n.html), [C](race-n.html)> [raceN](race-n.html)(crossinline fa: suspend .() -> [A](race-n.html), crossinline fb: suspend .() -> [B](race-n.html), crossinline fc: suspend .() -> [C](race-n.html)): [Race3](-race3/index.html)<[A](race-n.html), [B](race-n.html), [C](race-n.html)>
Races the participants [fa](race-n.html), [fb](race-n.html)&[fc](race-n.html) in parallel on the Dispatchers.Default. The winner of the race cancels the other participants. Cancelling the operation cancels all participants.
common inline suspend fun <[A](race-n.html), [B](race-n.html), [C](race-n.html)> [raceN](race-n.html)(ctx: [CoroutineContext](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.coroutines/-coroutine-context/index.html) = EmptyCoroutineContext, crossinline fa: suspend .() -> [A](race-n.html), crossinline fb: suspend .() -> [B](race-n.html), crossinline fc: suspend .() -> [C](race-n.html)): [Race3](-race3/index.html)<[A](race-n.html), [B](race-n.html), [C](race-n.html)>
Races the participants [fa](race-n.html), [fb](race-n.html)&[fc](race-n.html) on the provided [CoroutineContext](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.coroutines/-coroutine-context/index.html). The winner of the race cancels the other participants. Cancelling the operation cancels all participants.
release common infix fun <A> Resource<A>.release(release: suspend (A) -> Unit): Resource<A>
Composes a release action to a Resource.use action creating a Resource.
common infix fun <A> Use<A>.release(release: suspend (A) -> Unit): Resource<A>
releaseCase common infix fun <A> Resource<A>.releaseCase(release: suspend (A, ExitCase) -> Unit): Resource<A>
Composes a releaseCase action to a Resource.use action creating a Resource.
common infix fun <A> Use<A>.releaseCase(release: suspend (A, ExitCase) -> Unit): Resource<A>
repeat common fun <A> <[A](repeat.html)>.[repeat](repeat.html)(): <[A](repeat.html)>
Repeats the Flow forever
resource common fun <A> resource(acquire: suspend () -> A): Use<A>
Marks an acquire operation as the Resource.use step of a Resource.
retry common fun <A, B> <[A](retry.html)>.[retry](retry.html)(schedule: [Schedule](-schedule/index.html)<[Throwable](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-throwable/index.html), [B](retry.html)>): <[A](retry.html)>
Retries collection of the given flow when an exception occurs in the upstream flow based on a decision by the [schedule](retry.html). This operator is *transparent* to exceptions that occur in downstream flow and does not retry on exceptions that are thrown to cancel the flow.
common suspend fun <[A](retry.html), [B](retry.html)> [Schedule](-schedule/index.html)<[Throwable](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-throwable/index.html), [B](retry.html)>.[retry](retry.html)(fa: suspend () -> [A](retry.html)): [A](retry.html)
Runs an effect and, if it fails, decide using the provided policy if the effect should be retried and if so, with how much delay. Returns the result of the effect if if it was successful or re-raises the last error encountered when the schedule ends.
retryOrElse common suspend fun <A, B> Schedule<Throwable, B>.retryOrElse(fa: suspend () -> A, orElse: suspend (Throwable, B) -> A): A
Runs an effect and, if it fails, decide using the provided policy if the effect should be retried and if so, with how much delay. Also offers a function to handle errors if they are encountered during retrial.
retryOrElseEither common suspend fun <A, B, C> Schedule<Throwable, B>.retryOrElseEither(fa: suspend () -> A, orElse: suspend (Throwable, B) -> C): <[C](retry-or-else-either.html), [A](retry-or-else-either.html)>
Runs an effect and, if it fails, decide using the provided policy if the effect should be retried and if so, with how much delay. Also offers a function to handle errors if they are encountered during retrial.
sequence common inline fun <A> Iterable<Resource<A».sequence(): Resource<List<A»
Sequences this Iterable of Resources. Iterable.map and sequence is equivalent to traverseResource.
singleThreadContext jvm fun Resource.Companion.singleThreadContext(name: String): Resource<CoroutineContext>
Creates a single threaded CoroutineContext as a Resource. Upon release an orderly shutdown of the ExecutorService takes place in which previously submitted tasks are executed, but no new tasks will be accepted.
timeInMillis commonjsjvmnative common expect fun timeInMillis(): Long
jsjvmnative actual fun timeInMillis(): Long
traverseResource common inline fun <A, B> Iterable<A>.traverseResource(crossinline f: (A) -> Resource<B>): Resource<List<B»
Traverse this Iterable and collects the resulting Resource<B> of f into a Resource<List<B>>.
unit common suspend fun unit()

Do you like Arrow?

Arrow Org
<