diff --git a/alter.ts b/alter.ts index b5f3d69..5d348bb 100644 --- a/alter.ts +++ b/alter.ts @@ -8,10 +8,11 @@ * @example * * ```ts + * import { assertThrows } from "@std/assert"; * import { alter } from "@core/errorutil/alter"; * * console.log(alter(() => 1, "err2")); // 1 - * console.log(alter(() => { throw "err1" }, "err2")); // "err2" is thrown + * assertThrows(() => alter(() => { throw "err1" }, "err2"), "err2"); // "err2" is thrown * ``` */ export function alter(fn: () => T, alt: E): T { diff --git a/alter_else.ts b/alter_else.ts index 9c6219c..9077bca 100644 --- a/alter_else.ts +++ b/alter_else.ts @@ -8,10 +8,11 @@ * @example * * ```ts + * import { assertThrows } from "@std/assert"; * import { alterElse } from "@core/errorutil/alter-else"; * * console.log(alterElse(() => 1, () => "err")); // 1 - * console.log(alterElse(() => { throw "err" }, (err) => "new " + err)); // "new err" is thrown + * assertThrows(() => alterElse(() => { throw "err" }, (err) => "new " + err), "new err"); // "new err" is thrown * ``` */ export function alterElse(fn: () => T, elseFn: (err: unknown) => E): T { diff --git a/attempt.ts b/attempt.ts index 56fc3ea..e7b3098 100644 --- a/attempt.ts +++ b/attempt.ts @@ -16,10 +16,10 @@ export type Result = Success | Failure; * console.log(attempt(() => { throw "err" })); // ["err", undefined] * ``` */ -export function attempt(fn: () => T): Result { +export function attempt(fn: () => T): Result { try { return [undefined, fn()]; } catch (e) { - return [e, undefined]; + return [e as E, undefined]; } } diff --git a/mod.ts b/mod.ts index 3eed553..1088c23 100644 --- a/mod.ts +++ b/mod.ts @@ -1,3 +1,5 @@ +export * from "./alter.ts"; +export * from "./alter_else.ts"; export * from "./attempt.ts"; export * from "./error_object.ts"; export * from "./raise.ts";