<A, E>(self: Exit<A, E>): Option<A>Returns the success value of an Exit as an Option.
When to use
Use when you need the success value from an Exit as an Option instead of
pattern matching.
Details
Returns Option.some(value) for a Success and Option.none() for a Failure.
Example (Getting the success value)
import { Exit } from "effect"
console.log(Exit.getSuccess(Exit.succeed(42))) // { _tag: "Some", value: 42 }
console.log(Exit.getSuccess(Exit.fail("err"))) // { _tag: "None" }export const const getSuccess: <A, E>(
self: Exit<A, E>
) => Option<A>
Returns the success value of an Exit as an Option.
When to use
Use when you need the success value from an Exit as an Option instead of
pattern matching.
Details
Returns Option.some(value) for a Success and Option.none() for a Failure.
Example (Getting the success value)
import { Exit } from "effect"
console.log(Exit.getSuccess(Exit.succeed(42))) // { _tag: "Some", value: 42 }
console.log(Exit.getSuccess(Exit.fail("err"))) // { _tag: "None" }
getSuccess: <function (type parameter) A in <A, E>(self: Exit<A, E>): Option<A>A, function (type parameter) E in <A, E>(self: Exit<A, E>): Option<A>E>(self: Exit<A, E>self: type Exit<A, E = never> = Success<A, E> | Failure<A, E>Represents the result of an Effect computation.
When to use
Use when you need to synchronously inspect whether an Effect computation
succeeded or failed.
Details
An Exit<A, E> is either Success<A, E> containing a value of type A, or
Failure<A, E> containing a Cause<E> describing why the computation
failed.
Since Exit is also an Effect, you can yield it inside Effect.gen.
Example (Pattern matching on an Exit)
import { Exit } from "effect"
const success: Exit.Exit<number> = Exit.succeed(42)
const failure: Exit.Exit<number, string> = Exit.fail("error")
const result = Exit.match(success, {
onSuccess: (value) => `Got value: ${value}`,
onFailure: (cause) => `Got error: ${cause}`
})
Namespace containing helper types shared by Exit values.
When to use
Use to reference helper types that describe the shared structure of Exit
values.
Exit<function (type parameter) A in <A, E>(self: Exit<A, E>): Option<A>A, function (type parameter) E in <A, E>(self: Exit<A, E>): Option<A>E>) => type Option<A> = None<A> | Some<A>The Option data type represents optional values. An Option<A> is either
Some<A>, containing a value of type A, or None, representing absence.
When to use
Use to represent initial values that may not yet exist
- Returning from partial functions (not defined for all inputs)
- Managing optional fields in data structures
Namespace containing utility types for Option.
When to use
Use to access type-level helpers associated with Option.
Option<function (type parameter) A in <A, E>(self: Exit<A, E>): Option<A>A> = import effecteffect.const exitGetSuccess: <A, E>(
self: Exit.Exit<A, E>
) => Option.Option<A>
exitGetSuccess