UNPKG

@onrails/result

Version:

Tagged Result / ResultAsync for railway-oriented TypeScript — pure tagged unions, neverthrow-shaped compat shim, FL-friendly

16 lines (14 loc) 595 B
// src/internal/dual.ts var isOk = (result) => result._tag === "Ok"; var isErr = (result) => result._tag === "Err"; // src/extra.ts var declareErrors = () => ({ annotate: (result) => result, annotateAsync: (result) => result }); var hasKind = (error, kind) => error.kind === kind; var mapErrKind = (kind, fn) => (result) => isErr(result) && hasKind(result.error, kind) ? { _tag: "Err", error: fn(result.error) } : result; var allOk = (results) => results.every(isOk); export { allOk, declareErrors, hasKind, mapErrKind }; //# sourceMappingURL=extra.js.map //# sourceMappingURL=extra.js.map