Represents a failed result.

Type Parameters

  • E extends Error

    The type of the error (must extend Error)

Constructors

Methods

Properties

Constructors

Methods

  • Creates a new Failure result.

    Type Parameters

    • E extends Error

    Parameters

    • error: E

      The error

    Returns Failure<E>

    A Failure instance

    return Failure.create(new DomainError('INVALID_INPUT', 'Input is invalid'));
    
  • Maps have no effect on Failure, but preserves the type signature.

    Type Parameters

    • U

    Parameters

    • _fn: (value: never) => U

    Returns Failure<E>

    This Failure instance

    const result = Failure.create(new Error('fail'));
    const mapped = result.map(x => x * 2); // Still Failure('fail')
  • Flat map has no effect on Failure, but preserves the type signature.

    Type Parameters

    • U
    • E2 extends Error

    Parameters

    Returns Failure<E>

    This Failure instance cast to the new Result type

    const result = Failure.create(new Error('fail'));
    const flatMapped = result.flatMap(x => Success.create(x * 2)); // Still Failure('fail')

Properties

isSuccess: false = ...
isFailure: true = ...
error: E