UNPKG

retryable-operation

Version:

a simple package that allow executing retryable operation and providing retry options

19 lines (17 loc) 439 B
export type Ok<T> = { _tag: "Ok"; ok: T; isOk: true; isErr: false }; export type Err<E> = { _tag: "Err"; err: E; isErr: true; isOk: false }; export type Result<T, E> = Ok<T> | Err<E>; export const Result = Object.freeze({ Ok: <T, E>(ok: T): Result<T, E> => ({ _tag: "Ok", ok, isOk: true, isErr: false, }), Err: <T, E>(err: E): Result<T, E> => ({ _tag: "Err", err, isErr: true, isOk: false, }), });