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>`.

17 lines (16 loc) 641 B
import { unsafeUnwrapValueInErrWithoutAnyCheck } from './internal/intrinsics_unsafe.js'; import { createErr, isOk } from './result.js'; /** * Maps a `Result<T, E>` to `Result<T, F>` by applying a _transformer_ function `mapFn<E, F>` * to an contained `Err(E)` value, leaving an `Ok(T)` value untouched. * * This function can be used to pass through a successful result while handling an error. */ export function mapErrForResult(input, transformer) { if (isOk(input)) { return input; } const err = unsafeUnwrapValueInErrWithoutAnyCheck(input); const result = transformer(err); return createErr(result); }