Extracts the error value from a Result or ResultAsync.
If the input is a Success, it will throw the success value or return the default value if provided.
The input Result or ResultAsync.
The default value type (optional).
import { import Result Result } from '@praha/byethrow';
const const result: Result.Result<number, string> result : import Result Result .type Result<T, E> = Result.Success<T> | Result.Failure<E>A union type representing either a success or a failure.
Result <number, string> = import Result Result .const fail: <"Oops">(error: "Oops") => Result.Result<never, "Oops"> (+1 overload) fail ('Oops');
const const error: string error = import Result Result .const unwrapError: <Result.Result<number, string>>(result: Result.Result<number, string>) => string (+3 overloads) unwrapError (const result: Result.Result<number, string> result ); // 'Oops'import { import Result Result } from '@praha/byethrow';
const const result: Result.Result<number, string> result : import Result Result .type Result<T, E> = Result.Success<T> | Result.Failure<E>A union type representing either a success or a failure.
Result <number, string> = import Result Result .const fail: <"Oops">(error: "Oops") => Result.Result<never, "Oops"> (+1 overload) fail ('Oops');
const const error: string error = import Result Result .const unwrapError: <Result.Result<number, string>, "default">(result: Result.Result<number, string>, defaultValue: "default") => string (+3 overloads) unwrapError (const result: Result.Result<number, string> result , 'default'); // 'Oops'import { import Result Result } from '@praha/byethrow';
const const result: Result.Result<number, string> result : import Result Result .type Result<T, E> = Result.Success<T> | Result.Failure<E>A union type representing either a success or a failure.
Result <number, string> = import Result Result .const succeed: <100>(value: 100) => Result.Result<100, never> (+1 overload) succeed (100);
const const error: string error = import Result Result .const unwrapError: <Result.Result<number, string>>(result: Result.Result<number, string>) => string (+3 overloads) unwrapError (const result: Result.Result<number, string> result ); // throws 100import { import Result Result } from '@praha/byethrow';
const const result: Result.Result<number, string> result : import Result Result .type Result<T, E> = Result.Success<T> | Result.Failure<E>A union type representing either a success or a failure.
Result <number, string> = import Result Result .const succeed: <100>(value: 100) => Result.Result<100, never> (+1 overload) succeed (100);
const const error: string | 0 error = import Result Result .const unwrapError: <Result.Result<number, string>, 0>(result: Result.Result<number, string>, defaultValue: 0) => string | 0 (+3 overloads) unwrapError (const result: Result.Result<number, string> result , 0); // 0assertFailure - When used with assertFailure, you can safely unwrap the Result.
unwrapError<
R>(result):trueextendsHasPromise<R> ?Promise<InferFailure<R>> :InferFailure<R>
Defined in: functions/unwrap-error.ts:56
R extends ResultMaybeAsync<any, any>
R
true extends HasPromise<R> ? Promise<InferFailure<R>> : InferFailure<R>
unwrapError<
R,T>(result,defaultValue):trueextendsHasPromise<R> ?Promise<T|InferFailure<R>> :T|InferFailure<R>
Defined in: functions/unwrap-error.ts:57
R extends ResultMaybeAsync<any, any>
T
R
T
true extends HasPromise<R> ? Promise<T | InferFailure<R>> : T | InferFailure<R>
unwrapError<
R>(): (result) =>trueextendsHasPromise<R> ?Promise<InferFailure<R>> :InferFailure<R>
Defined in: functions/unwrap-error.ts:58
R extends ResultMaybeAsync<any, any>
(
result):trueextendsHasPromise<R> ?Promise<InferFailure<R>> :InferFailure<R>
R
true extends HasPromise<R> ? Promise<InferFailure<R>> : InferFailure<R>
unwrapError<
R,T>(defaultValue): (result) =>trueextendsHasPromise<R> ?Promise<T|InferFailure<R>> :T|InferFailure<R>
Defined in: functions/unwrap-error.ts:59
R extends ResultMaybeAsync<any, any>
T
T
(
result):trueextendsHasPromise<R> ?Promise<T|InferFailure<R>> :T|InferFailure<R>
R
true extends HasPromise<R> ? Promise<T | InferFailure<R>> : T | InferFailure<R>