Package: effect
Module: Stream
The stream that dies with the specified defect.
Example (Dying with a defect)
import { Cause, Console, Effect, Exit, Stream } from "effect"
const defect = new Error("Boom")
const stream = Stream.die(defect)
const program = Effect.gen(function*() {
const exit = yield* Effect.exit(Stream.runCollect(stream))
const message = Exit.match(exit, {
onSuccess: () => "Exit.Success",
onFailure: (cause) => {
const reason = cause.reasons[0]
const defect = Cause.isDieReason(reason) ? String(reason.defect) : "Unexpected reason"
return `Exit.Failure(${defect})`
}
})
yield* Console.log(message)
})
Effect.runPromise(program)
// Output: Exit.Failure(Error: Boom)
Signature
declare const die: (defect: unknown) => Stream<never>
Since v2.0.0