diff options
Diffstat (limited to 'node_modules/currently-unhandled/core.js')
-rw-r--r-- | node_modules/currently-unhandled/core.js | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/node_modules/currently-unhandled/core.js b/node_modules/currently-unhandled/core.js new file mode 100644 index 0000000..73db22e --- /dev/null +++ b/node_modules/currently-unhandled/core.js @@ -0,0 +1,33 @@ +'use strict'; +var arrayFindIndex = require('array-find-index'); + +module.exports = function () { + var unhandledRejections = []; + + function onUnhandledRejection(reason, promise) { + unhandledRejections.push({reason: reason, promise: promise}); + } + + function onRejectionHandled(promise) { + var index = arrayFindIndex(unhandledRejections, function (x) { + return x.promise === promise; + }); + + unhandledRejections.splice(index, 1); + } + + function currentlyUnhandled() { + return unhandledRejections.map(function (entry) { + return { + reason: entry.reason, + promise: entry.promise + }; + }); + } + + return { + onUnhandledRejection: onUnhandledRejection, + onRejectionHandled: onRejectionHandled, + currentlyUnhandled: currentlyUnhandled + }; +}; |