@mikuroxina/mini-fn
    Preparing search index...

    Function orElse

    • Returns fn() if resA is an Err, otherwise returns the success resA. The order of arguments is reversed because of that it is useful for partial applying.

      Type Parameters

      • F
      • T
      • E

      Parameters

      Returns (resA: Result.Result<F, T>) => Result.Result<E, T>

      resA or fn().

      Examples

      const sq = orElse((x: number) => ok<number>(x * x));
      const residual = orElse((x: number) => err<number>(x));

      expect(sq(sq(ok(2)))).toStrictEqual(ok(2));
      expect(sq(residual(ok(2)))).toStrictEqual(ok(2));
      expect(residual(sq(err(3)))).toStrictEqual(ok(9));
      expect(residual(residual(err(3)))).toStrictEqual(err(3));