mirror of
https://github.com/Instadapp/Swap-Aggregator-Subgraph.git
synced 2024-07-29 21:57:12 +00:00
36 lines
735 B
JavaScript
36 lines
735 B
JavaScript
|
|
function getStack(err) {
|
|
if(err.stack && err.name && err.message)
|
|
return err.stack.substring(err.name.length + 3 + err.message.length)
|
|
.split('\n')
|
|
else if(err.stack)
|
|
return err.stack.split('\n')
|
|
}
|
|
|
|
function removePrefix (a, b) {
|
|
return a.filter(function (e) {
|
|
return !~b.indexOf(e)
|
|
})
|
|
}
|
|
|
|
var explain = module.exports = function (err, message) {
|
|
if(!(err.stack && err.name && err.message)) {
|
|
console.error(new Error('stackless error'))
|
|
return err
|
|
}
|
|
|
|
var _err = new Error(message)
|
|
var stack = removePrefix(getStack(_err).slice(1), getStack(err)).join('\n')
|
|
|
|
_err.__proto__ = err
|
|
|
|
_err.stack =
|
|
_err.name + ': ' + _err.message + '\n' +
|
|
stack + '\n ' + err.stack
|
|
|
|
return _err
|
|
}
|
|
|
|
|
|
|