deno.land / x / rambda@v9.1.1 / source / tryCatch.js
12345678910111213141516171819import { type } from './type.js'
const isFunction = x => [ 'Promise', 'Function' ].includes(type(x))
export function tryCatch(fn, fallback){ if (!isFunction(fn)){ throw new Error(`R.tryCatch | fn '${ fn }'`) } const passFallback = isFunction(fallback)
return (...inputs) => { try { return fn(...inputs) } catch (e){ return passFallback ? fallback(e, ...inputs) : fallback } }}
Version Info