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

25 lines (24 loc) 804 B
import { createOk, createErr } from './result.js'; /** * Convert {@link PromiseSettledResult<T>} returned by {@link Promise.allSettled} to {@link Result} */ export function fromPromiseSettledResultToResult(input) { const status = input.status; switch (status) { case 'fulfilled': { const value = input.value; const okWrapped = createOk(value); return okWrapped; } case 'rejected': { const reason = input.reason; const errWrapped = createErr(reason); return errWrapped; } default: { const statusStr = String(status); const message = `\`PromiseSettledResult.status=${statusStr}\` is not supported`; throw new TypeError(message); } } }