# Delegates to `succ` on sucecss or to `fail` on error# ex: Thing.load 123, iferr cb, (thing) -> ...iferr=(fail,succ)->(err,a...)->iferr?thenfailerrelsesucc?a...# Like iferr, but also catches errors thrown from `succ` and passes to `fail`tiferr=(fail,succ)->iferrfail,(a...)->trysucca...catcherrthenfailerr# Delegate to the success function on success, or throw the error otherwise# ex: Thing.load 123, throwerr (thing) -> ...throwerr=iferr.bindnull,(err)->throwerr# Prints errors when one is passed, or does nothing otherwise# ex: thing.save printerrprinterr=iferr(err)->console.errorerr.stackorerrmodule.exports=exports=iferrexports.iferr=iferrexports.tiferr=tiferrexports.throwerr=throwerrexports.printerr=printerr