Skip to content

fromThrowable

fromThrowable<Args, A, E>(f, onError): (…args) => Result<E, A>

Defined in: Core/Result.ts:247

Wraps a throwing function of any arguments, returning a new function that catches errors and returns a Result.

Args extends readonly unknown[]

A

E

(…args) => A

(e) => E

(…args) => Result<E, A>

const safeParse = Result.fromThrowable(
  (s: string) => JSON.parse(s),
  (e) => new Error(`Parse error: ${e}`)
);

safeParse('{"a":1}'); // Ok({ a: 1 })
safeParse('invalid');  // Err(Error)