Package-level declarations

Types

Link copied to clipboard

An exception about misconfigured phases in a pipeline

Link copied to clipboard
open class Pipeline<TSubject : Any, TContext : Any>(phases: PipelinePhase)

Represents an execution pipeline for asynchronous extensible computations

Link copied to clipboard
abstract class PipelineContext<TSubject : Any, TContext : Any>(val context: TContext) : CoroutineScope

Represents running execution of a pipeline

Link copied to clipboard

Represents an interceptor type which is a suspend extension function for a context

Link copied to clipboard
class PipelinePhase(val name: String)

Represents a phase in a pipeline

Functions

Link copied to clipboard
inline suspend fun <TContext : Any> Pipeline<Unit, TContext>.execute(context: TContext)

Executes this pipeline

Link copied to clipboard
inline fun <TSubject : Any, TContext : Any> Pipeline<*, TContext>.intercept(phase: PipelinePhase, noinline block: suspend PipelineContext<TSubject, TContext>.(TSubject) -> Unit)

Intercepts an untyped pipeline when the subject is of the given type