effect-io-ai

Package: effect
Module: Optic

Optic.success

Prism that focuses on the success value of a Result.

When to use

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

Details

Example (Accessing success)

import { Optic, Result } from "effect"

const _ok = Optic.id<Result.Result<number, string>>().compose(Optic.success())

console.log(Result.isSuccess(_ok.getResult(Result.succeed(42))))
// Output: true

console.log(Result.isFailure(_ok.getResult(Result.fail("err"))))
// Output: true

See

Signature

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

Source

Since v4.0.0