| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546 | "use strict";module.exports = function(Promise) {function returner() {    return this.value;}function thrower() {    throw this.reason;}Promise.prototype["return"] =Promise.prototype.thenReturn = function (value) {    if (value instanceof Promise) value.suppressUnhandledRejections();    return this._then(        returner, undefined, undefined, {value: value}, undefined);};Promise.prototype["throw"] =Promise.prototype.thenThrow = function (reason) {    return this._then(        thrower, undefined, undefined, {reason: reason}, undefined);};Promise.prototype.catchThrow = function (reason) {    if (arguments.length <= 1) {        return this._then(            undefined, thrower, undefined, {reason: reason}, undefined);    } else {        var _reason = arguments[1];        var handler = function() {throw _reason;};        return this.caught(reason, handler);    }};Promise.prototype.catchReturn = function (value) {    if (arguments.length <= 1) {        if (value instanceof Promise) value.suppressUnhandledRejections();        return this._then(            undefined, returner, undefined, {value: value}, undefined);    } else {        var _value = arguments[1];        if (_value instanceof Promise) _value.suppressUnhandledRejections();        var handler = function() {return _value;};        return this.caught(value, handler);    }};};
 |