UNPKG

option-t

Version:

A toolkit of Nullable/Option/Result type implementation in ECMAScript. Their APIs are inspired by Rust's `Option<T>` and `Result<T, E>`.

16 lines (15 loc) 554 B
import { isOk } from '../core/result.js'; import { unsafeUnwrapValueInErrWithoutAnyCheck } from '../internal/intrinsics_unsafe.js'; /** * Calls _recoverer_ and return its returned value if _input_ is `Err(E)`, * otherwise returns _input_ as `Ok(T)`. * This function can be used for control flow based on result values. */ export function orElseForResult(input, recoverer) { if (isOk(input)) { return input; } const err = unsafeUnwrapValueInErrWithoutAnyCheck(input); const fallback = recoverer(err); return fallback; }