@usersatoshi/results
    Preparing search index...

    Class BaseResult<T, E>Abstract

    Base implementation of a Rust-like Result type.

    success === true represents Ok<T> and success === false represents Err<E>. Concrete variants are implemented by Ok and Err.

    Type Parameters

    • T
    • E extends { kind: number }

    Hierarchy (View Summary)

    Index

    Constructors

    • Type Parameters

      • T
      • E extends { kind: number }

      Returns BaseResult<T, E>

    Properties

    error?: E

    The error value when present.

    success: boolean

    true when this instance is an Ok.

    value?: T

    The success value when present.

    Methods

    • Chains computations that may fail.

      If this is Ok, calls fn with the current value. If this is Err, propagates the error unchanged.

      Type Parameters

      • U

      Parameters

      Returns Result<U, E>

    • Chains computations that may fail.

      If this is Ok, calls fn with the current value. If this is Err, propagates the error unchanged.

      Type Parameters

      • U

      Parameters

      Returns Promise<Result<U, E>>

    • Type guard for narrowing to Err.

      Returns this is Err<E>

    • Type guard for narrowing to Ok.

      Returns this is Ok<T>

    • Transforms the success value while preserving the error type.

      If this is Err, the error is propagated unchanged.

      Type Parameters

      • U

      Parameters

      • fn: (value: T) => Promise<U>

      Returns Promise<Result<U, E>>

    • Transforms the success value while preserving the error type.

      If this is Err, the error is propagated unchanged.

      Type Parameters

      • U

      Parameters

      • fn: (value: T) => U

      Returns Result<U, E>

    • Transforms the error value while preserving the success type.

      If this is Ok, the value is propagated unchanged.

      Type Parameters

      • F extends { kind: number }

      Parameters

      • fn: (error: E) => Promise<F>

      Returns Promise<Result<T, F>>

    • Transforms the error value while preserving the success type.

      If this is Ok, the value is propagated unchanged.

      Type Parameters

      • F extends { kind: number }

      Parameters

      • fn: (error: E) => F

      Returns Result<T, F>

    • Exhaustively handles both variants and returns a shared result type.

      Type Parameters

      • U

      Parameters

      • onOk: (value: T) => U
      • onErr: (error: E) => U

      Returns U

    • Recovers from an error by mapping Err<E> to Result<T, F>.

      If this is Ok, the value is preserved.

      Type Parameters

      • U
      • F extends { kind: number }

      Parameters

      Returns Result<U, F>

    • Recovers from an error by mapping Err<E> to Result<T, F>.

      If this is Ok, the value is preserved.

      Type Parameters

      • U
      • F extends { kind: number }

      Parameters

      Returns Promise<Result<U, F>>

    • Returns the success value.

      Returns T

      ResultError if called on an Err.

    • Returns the success value, or defaultValue if this is an Err.

      Type Parameters

      • U

      Parameters

      • defaultValue: U

      Returns T | U

    • Collects an array of results into a single result.

      Returns the first Err encountered, or Ok<T[]> when all succeed.

      Type Parameters

      • T
      • E extends { kind: number }

      Parameters

      Returns Result<T[], E>

    • Async overload of BaseResult.all.

      Type Parameters

      • T
      • E extends { kind: number }

      Parameters

      Returns Promise<Result<T[], E>>

    • Returns the first successful result.

      If all results are errors, returns the last encountered Err.

      Type Parameters

      • T
      • E extends { kind: number }

      Parameters

      Returns Result<T, E>

    • Async overload of BaseResult.any.

      Type Parameters

      • T
      • E extends { kind: number }

      Parameters

      Returns Promise<Result<T, E>>