Uname: Linux web3.us.cloudlogin.co 5.10.226-xeon-hst #2 SMP Fri Sep 13 12:28:44 UTC 2024 x86_64
Software: Apache
PHP version: 8.1.31 [ PHP INFO ] PHP os: Linux
Server Ip: 162.210.96.117
Your Ip: 3.147.77.79
User: edustar (269686) | Group: tty (888)
Safe Mode: OFF
Disable Function:
NONE

name : iferr.js
// Delegates to `succ` on sucecss or to `fail` on error
// ex: Thing.load(123, iferr(cb, thing => ...))
const iferr = (fail, succ) => (err, ...a) => err ? fail(err) : succ(...a)

// Like iferr, but also catches errors thrown from `succ` and passes to `fail`
const tiferr = (fail, succ) => iferr(fail, (...a) => {
  try { succ(...a) }
  catch (err) { fail(err) }
})

// Delegate to the success function on success, throws the error otherwise
// ex: Thing.load(123, throwerr(thing => ...))
const throwerr = iferr.bind(null, err => { throw err })

// Prints errors when one is passed, or does nothing otherwise
// ex: Thing.load(123, printerr)
const printerr = iferr(err => console.error(err), () => {})

module.exports = exports = iferr
exports.iferr = iferr
exports.tiferr = tiferr
exports.throwerr = throwerr
exports.printerr = printerr
© 2025 GrazzMean