mirror of
https://github.com/CorentinTh/it-tools.git
synced 2025-05-04 21:37:11 -04:00
19 lines
387 B
TypeScript
19 lines
387 B
TypeScript
export { withDefaultOnError, withDefaultOnErrorAsync };
|
|
|
|
function withDefaultOnError<A, B>(cb: () => A, defaultValue: B): A | B {
|
|
try {
|
|
return cb();
|
|
}
|
|
catch (_) {
|
|
return defaultValue;
|
|
}
|
|
}
|
|
|
|
async function withDefaultOnErrorAsync<A, B>(cb: () => A, defaultValue: B): Promise<Awaited<A> | B> {
|
|
try {
|
|
return await cb();
|
|
}
|
|
catch (_) {
|
|
return defaultValue;
|
|
}
|
|
}
|