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) • 676 B
JavaScript
import { createOk, createErr } from '../plain_result/result.js';
import { isUndefined } from './undefinable.js';
/**
* Return `Err<void>` if _input_ is `undefinable`.
* Otherwise, return `Ok<T>` directly.
*/
export function toResultOkFromUndefinable(input) {
if (isUndefined(input)) {
return createErr(undefined);
}
const result = createOk(input);
return result;
}
/**
* Return `Ok<void>` if _input_ is `undefinable`.
* Otherwise, return `Err<E>` directly.
*/
export function toResultErrFromUndefinable(input) {
if (isUndefined(input)) {
return createOk(undefined);
}
const result = createErr(input);
return result;
}