UNPKG

envio

Version:

A latency and sync speed optimized, developer friendly blockchain data indexer.

57 lines (48 loc) 1.29 kB
// Generated by ReScript, PLEASE EDIT WITH CARE 'use strict'; var Utils = require("./Utils.res.js"); var Logging = require("./Logging.res.js"); function make(exn, loggerOpt, msg) { var logger = loggerOpt !== undefined ? loggerOpt : Logging.getLogger(); return { logger: logger, exn: exn, msg: msg }; } function log(self) { var msg = self.msg; var exn = self.exn; var logger = self.logger; if (msg !== undefined) { return Logging.childErrorWithExn(logger, Utils.prettifyExn(exn), msg); } else { return Logging.childError(logger, Utils.prettifyExn(exn)); } } function raiseExn(self) { throw Utils.prettifyExn(self.exn); } function mkLogAndRaise(logger, msg, exn) { var exn$1 = Utils.prettifyExn(exn); log(make(exn$1, logger, msg)); throw exn$1; } function unwrapLogAndRaise(logger, msg, result) { if (result.TAG === "Ok") { return result._0; } else { return mkLogAndRaise(logger, msg, result._0); } } function logAndRaise(self) { log(self); throw Utils.prettifyExn(self.exn); } exports.make = make; exports.log = log; exports.raiseExn = raiseExn; exports.mkLogAndRaise = mkLogAndRaise; exports.unwrapLogAndRaise = unwrapLogAndRaise; exports.logAndRaise = logAndRaise; /* Utils Not a pure module */