effect-io-ai

Package: effect
Module: Optic

Optic.failure

Prism that focuses on the failure value of a Result.

When to use

Use when you have a Result<A, E> and want to read/update E only when it is a Failure.

Details

Example (Accessing failure)

import { Optic, Result } from "effect"

const _err = Optic.id<Result.Result<number, string>>().compose(Optic.failure())

console.log(Result.isSuccess(_err.getResult(Result.fail("oops"))))
// Output: true

console.log(Result.isFailure(_err.getResult(Result.succeed(42))))
// Output: true

See

Signature

declare const failure: <A, E>() => Prism<Result.Result<A, E>, E>

Source

Since v4.0.0