aboutsummaryrefslogtreecommitdiff
path: root/node_modules/when/lib/decorators
diff options
context:
space:
mode:
Diffstat (limited to 'node_modules/when/lib/decorators')
-rw-r--r--node_modules/when/lib/decorators/array.js285
-rw-r--r--node_modules/when/lib/decorators/flow.js160
-rw-r--r--node_modules/when/lib/decorators/fold.js27
-rw-r--r--node_modules/when/lib/decorators/inspect.js20
-rw-r--r--node_modules/when/lib/decorators/iterate.js65
-rw-r--r--node_modules/when/lib/decorators/progress.js24
-rw-r--r--node_modules/when/lib/decorators/timed.js78
-rw-r--r--node_modules/when/lib/decorators/unhandledRejection.js85
-rw-r--r--node_modules/when/lib/decorators/with.js38
9 files changed, 0 insertions, 782 deletions
diff --git a/node_modules/when/lib/decorators/array.js b/node_modules/when/lib/decorators/array.js
deleted file mode 100644
index de0d373f..00000000
--- a/node_modules/when/lib/decorators/array.js
+++ /dev/null
@@ -1,285 +0,0 @@
-/** @license MIT License (c) copyright 2010-2014 original author or authors */
-/** @author Brian Cavalier */
-/** @author John Hann */
-
-(function(define) { 'use strict';
-define(function(require) {
-
- var state = require('../state');
- var applier = require('../apply');
-
- return function array(Promise) {
-
- var applyFold = applier(Promise);
- var toPromise = Promise.resolve;
- var all = Promise.all;
-
- var ar = Array.prototype.reduce;
- var arr = Array.prototype.reduceRight;
- var slice = Array.prototype.slice;
-
- // Additional array combinators
-
- Promise.any = any;
- Promise.some = some;
- Promise.settle = settle;
-
- Promise.map = map;
- Promise.filter = filter;
- Promise.reduce = reduce;
- Promise.reduceRight = reduceRight;
-
- /**
- * When this promise fulfills with an array, do
- * onFulfilled.apply(void 0, array)
- * @param {function} onFulfilled function to apply
- * @returns {Promise} promise for the result of applying onFulfilled
- */
- Promise.prototype.spread = function(onFulfilled) {
- return this.then(all).then(function(array) {
- return onFulfilled.apply(this, array);
- });
- };
-
- return Promise;
-
- /**
- * One-winner competitive race.
- * Return a promise that will fulfill when one of the promises
- * in the input array fulfills, or will reject when all promises
- * have rejected.
- * @param {array} promises
- * @returns {Promise} promise for the first fulfilled value
- */
- function any(promises) {
- var p = Promise._defer();
- var resolver = p._handler;
- var l = promises.length>>>0;
-
- var pending = l;
- var errors = [];
-
- for (var h, x, i = 0; i < l; ++i) {
- x = promises[i];
- if(x === void 0 && !(i in promises)) {
- --pending;
- continue;
- }
-
- h = Promise._handler(x);
- if(h.state() > 0) {
- resolver.become(h);
- Promise._visitRemaining(promises, i, h);
- break;
- } else {
- h.visit(resolver, handleFulfill, handleReject);
- }
- }
-
- if(pending === 0) {
- resolver.reject(new RangeError('any(): array must not be empty'));
- }
-
- return p;
-
- function handleFulfill(x) {
- /*jshint validthis:true*/
- errors = null;
- this.resolve(x); // this === resolver
- }
-
- function handleReject(e) {
- /*jshint validthis:true*/
- if(this.resolved) { // this === resolver
- return;
- }
-
- errors.push(e);
- if(--pending === 0) {
- this.reject(errors);
- }
- }
- }
-
- /**
- * N-winner competitive race
- * Return a promise that will fulfill when n input promises have
- * fulfilled, or will reject when it becomes impossible for n
- * input promises to fulfill (ie when promises.length - n + 1
- * have rejected)
- * @param {array} promises
- * @param {number} n
- * @returns {Promise} promise for the earliest n fulfillment values
- *
- * @deprecated
- */
- function some(promises, n) {
- /*jshint maxcomplexity:7*/
- var p = Promise._defer();
- var resolver = p._handler;
-
- var results = [];
- var errors = [];
-
- var l = promises.length>>>0;
- var nFulfill = 0;
- var nReject;
- var x, i; // reused in both for() loops
-
- // First pass: count actual array items
- for(i=0; i<l; ++i) {
- x = promises[i];
- if(x === void 0 && !(i in promises)) {
- continue;
- }
- ++nFulfill;
- }
-
- // Compute actual goals
- n = Math.max(n, 0);
- nReject = (nFulfill - n + 1);
- nFulfill = Math.min(n, nFulfill);
-
- if(n > nFulfill) {
- resolver.reject(new RangeError('some(): array must contain at least '
- + n + ' item(s), but had ' + nFulfill));
- } else if(nFulfill === 0) {
- resolver.resolve(results);
- }
-
- // Second pass: observe each array item, make progress toward goals
- for(i=0; i<l; ++i) {
- x = promises[i];
- if(x === void 0 && !(i in promises)) {
- continue;
- }
-
- Promise._handler(x).visit(resolver, fulfill, reject, resolver.notify);
- }
-
- return p;
-
- function fulfill(x) {
- /*jshint validthis:true*/
- if(this.resolved) { // this === resolver
- return;
- }
-
- results.push(x);
- if(--nFulfill === 0) {
- errors = null;
- this.resolve(results);
- }
- }
-
- function reject(e) {
- /*jshint validthis:true*/
- if(this.resolved) { // this === resolver
- return;
- }
-
- errors.push(e);
- if(--nReject === 0) {
- results = null;
- this.reject(errors);
- }
- }
- }
-
- /**
- * Apply f to the value of each promise in a list of promises
- * and return a new list containing the results.
- * @param {array} promises
- * @param {function(x:*, index:Number):*} f mapping function
- * @returns {Promise}
- */
- function map(promises, f) {
- return Promise._traverse(f, promises);
- }
-
- /**
- * Filter the provided array of promises using the provided predicate. Input may
- * contain promises and values
- * @param {Array} promises array of promises and values
- * @param {function(x:*, index:Number):boolean} predicate filtering predicate.
- * Must return truthy (or promise for truthy) for items to retain.
- * @returns {Promise} promise that will fulfill with an array containing all items
- * for which predicate returned truthy.
- */
- function filter(promises, predicate) {
- var a = slice.call(promises);
- return Promise._traverse(predicate, a).then(function(keep) {
- return filterSync(a, keep);
- });
- }
-
- function filterSync(promises, keep) {
- // Safe because we know all promises have fulfilled if we've made it this far
- var l = keep.length;
- var filtered = new Array(l);
- for(var i=0, j=0; i<l; ++i) {
- if(keep[i]) {
- filtered[j++] = Promise._handler(promises[i]).value;
- }
- }
- filtered.length = j;
- return filtered;
-
- }
-
- /**
- * Return a promise that will always fulfill with an array containing
- * the outcome states of all input promises. The returned promise
- * will never reject.
- * @param {Array} promises
- * @returns {Promise} promise for array of settled state descriptors
- */
- function settle(promises) {
- return all(promises.map(settleOne));
- }
-
- function settleOne(p) {
- var h = Promise._handler(p);
- return h.state() === 0 ? toPromise(p).then(state.fulfilled, state.rejected)
- : state.inspect(h);
- }
-
- /**
- * Traditional reduce function, similar to `Array.prototype.reduce()`, but
- * input may contain promises and/or values, and reduceFunc
- * may return either a value or a promise, *and* initialValue may
- * be a promise for the starting value.
- * @param {Array|Promise} promises array or promise for an array of anything,
- * may contain a mix of promises and values.
- * @param {function(accumulated:*, x:*, index:Number):*} f reduce function
- * @returns {Promise} that will resolve to the final reduced value
- */
- function reduce(promises, f /*, initialValue */) {
- return arguments.length > 2 ? ar.call(promises, liftCombine(f), arguments[2])
- : ar.call(promises, liftCombine(f));
- }
-
- /**
- * Traditional reduce function, similar to `Array.prototype.reduceRight()`, but
- * input may contain promises and/or values, and reduceFunc
- * may return either a value or a promise, *and* initialValue may
- * be a promise for the starting value.
- * @param {Array|Promise} promises array or promise for an array of anything,
- * may contain a mix of promises and values.
- * @param {function(accumulated:*, x:*, index:Number):*} f reduce function
- * @returns {Promise} that will resolve to the final reduced value
- */
- function reduceRight(promises, f /*, initialValue */) {
- return arguments.length > 2 ? arr.call(promises, liftCombine(f), arguments[2])
- : arr.call(promises, liftCombine(f));
- }
-
- function liftCombine(f) {
- return function(z, x, i) {
- return applyFold(f, void 0, [z,x,i]);
- };
- }
- };
-
-});
-}(typeof define === 'function' && define.amd ? define : function(factory) { module.exports = factory(require); }));
diff --git a/node_modules/when/lib/decorators/flow.js b/node_modules/when/lib/decorators/flow.js
deleted file mode 100644
index 635e4f49..00000000
--- a/node_modules/when/lib/decorators/flow.js
+++ /dev/null
@@ -1,160 +0,0 @@
-/** @license MIT License (c) copyright 2010-2014 original author or authors */
-/** @author Brian Cavalier */
-/** @author John Hann */
-
-(function(define) { 'use strict';
-define(function() {
-
- return function flow(Promise) {
-
- var resolve = Promise.resolve;
- var reject = Promise.reject;
- var origCatch = Promise.prototype['catch'];
-
- /**
- * Handle the ultimate fulfillment value or rejection reason, and assume
- * responsibility for all errors. If an error propagates out of result
- * or handleFatalError, it will be rethrown to the host, resulting in a
- * loud stack track on most platforms and a crash on some.
- * @param {function?} onResult
- * @param {function?} onError
- * @returns {undefined}
- */
- Promise.prototype.done = function(onResult, onError) {
- this._handler.visit(this._handler.receiver, onResult, onError);
- };
-
- /**
- * Add Error-type and predicate matching to catch. Examples:
- * promise.catch(TypeError, handleTypeError)
- * .catch(predicate, handleMatchedErrors)
- * .catch(handleRemainingErrors)
- * @param onRejected
- * @returns {*}
- */
- Promise.prototype['catch'] = Promise.prototype.otherwise = function(onRejected) {
- if (arguments.length < 2) {
- return origCatch.call(this, onRejected);
- }
-
- if(typeof onRejected !== 'function') {
- return this.ensure(rejectInvalidPredicate);
- }
-
- return origCatch.call(this, createCatchFilter(arguments[1], onRejected));
- };
-
- /**
- * Wraps the provided catch handler, so that it will only be called
- * if the predicate evaluates truthy
- * @param {?function} handler
- * @param {function} predicate
- * @returns {function} conditional catch handler
- */
- function createCatchFilter(handler, predicate) {
- return function(e) {
- return evaluatePredicate(e, predicate)
- ? handler.call(this, e)
- : reject(e);
- };
- }
-
- /**
- * Ensures that onFulfilledOrRejected will be called regardless of whether
- * this promise is fulfilled or rejected. onFulfilledOrRejected WILL NOT
- * receive the promises' value or reason. Any returned value will be disregarded.
- * onFulfilledOrRejected may throw or return a rejected promise to signal
- * an additional error.
- * @param {function} handler handler to be called regardless of
- * fulfillment or rejection
- * @returns {Promise}
- */
- Promise.prototype['finally'] = Promise.prototype.ensure = function(handler) {
- if(typeof handler !== 'function') {
- return this;
- }
-
- return this.then(function(x) {
- return runSideEffect(handler, this, identity, x);
- }, function(e) {
- return runSideEffect(handler, this, reject, e);
- });
- };
-
- function runSideEffect (handler, thisArg, propagate, value) {
- var result = handler.call(thisArg);
- return maybeThenable(result)
- ? propagateValue(result, propagate, value)
- : propagate(value);
- }
-
- function propagateValue (result, propagate, x) {
- return resolve(result).then(function () {
- return propagate(x);
- });
- }
-
- /**
- * Recover from a failure by returning a defaultValue. If defaultValue
- * is a promise, it's fulfillment value will be used. If defaultValue is
- * a promise that rejects, the returned promise will reject with the
- * same reason.
- * @param {*} defaultValue
- * @returns {Promise} new promise
- */
- Promise.prototype['else'] = Promise.prototype.orElse = function(defaultValue) {
- return this.then(void 0, function() {
- return defaultValue;
- });
- };
-
- /**
- * Shortcut for .then(function() { return value; })
- * @param {*} value
- * @return {Promise} a promise that:
- * - is fulfilled if value is not a promise, or
- * - if value is a promise, will fulfill with its value, or reject
- * with its reason.
- */
- Promise.prototype['yield'] = function(value) {
- return this.then(function() {
- return value;
- });
- };
-
- /**
- * Runs a side effect when this promise fulfills, without changing the
- * fulfillment value.
- * @param {function} onFulfilledSideEffect
- * @returns {Promise}
- */
- Promise.prototype.tap = function(onFulfilledSideEffect) {
- return this.then(onFulfilledSideEffect)['yield'](this);
- };
-
- return Promise;
- };
-
- function rejectInvalidPredicate() {
- throw new TypeError('catch predicate must be a function');
- }
-
- function evaluatePredicate(e, predicate) {
- return isError(predicate) ? e instanceof predicate : predicate(e);
- }
-
- function isError(predicate) {
- return predicate === Error
- || (predicate != null && predicate.prototype instanceof Error);
- }
-
- function maybeThenable(x) {
- return (typeof x === 'object' || typeof x === 'function') && x !== null;
- }
-
- function identity(x) {
- return x;
- }
-
-});
-}(typeof define === 'function' && define.amd ? define : function(factory) { module.exports = factory(); }));
diff --git a/node_modules/when/lib/decorators/fold.js b/node_modules/when/lib/decorators/fold.js
deleted file mode 100644
index c7f027aa..00000000
--- a/node_modules/when/lib/decorators/fold.js
+++ /dev/null
@@ -1,27 +0,0 @@
-/** @license MIT License (c) copyright 2010-2014 original author or authors */
-/** @author Brian Cavalier */
-/** @author John Hann */
-/** @author Jeff Escalante */
-
-(function(define) { 'use strict';
-define(function() {
-
- return function fold(Promise) {
-
- Promise.prototype.fold = function(f, z) {
- var promise = this._beget();
-
- this._handler.fold(function(z, x, to) {
- Promise._handler(z).fold(function(x, z, to) {
- to.resolve(f.call(this, z, x));
- }, x, this, to);
- }, z, promise._handler.receiver, promise._handler);
-
- return promise;
- };
-
- return Promise;
- };
-
-});
-}(typeof define === 'function' && define.amd ? define : function(factory) { module.exports = factory(); }));
diff --git a/node_modules/when/lib/decorators/inspect.js b/node_modules/when/lib/decorators/inspect.js
deleted file mode 100644
index 95b87157..00000000
--- a/node_modules/when/lib/decorators/inspect.js
+++ /dev/null
@@ -1,20 +0,0 @@
-/** @license MIT License (c) copyright 2010-2014 original author or authors */
-/** @author Brian Cavalier */
-/** @author John Hann */
-
-(function(define) { 'use strict';
-define(function(require) {
-
- var inspect = require('../state').inspect;
-
- return function inspection(Promise) {
-
- Promise.prototype.inspect = function() {
- return inspect(Promise._handler(this));
- };
-
- return Promise;
- };
-
-});
-}(typeof define === 'function' && define.amd ? define : function(factory) { module.exports = factory(require); }));
diff --git a/node_modules/when/lib/decorators/iterate.js b/node_modules/when/lib/decorators/iterate.js
deleted file mode 100644
index 3ea70b3c..00000000
--- a/node_modules/when/lib/decorators/iterate.js
+++ /dev/null
@@ -1,65 +0,0 @@
-/** @license MIT License (c) copyright 2010-2014 original author or authors */
-/** @author Brian Cavalier */
-/** @author John Hann */
-
-(function(define) { 'use strict';
-define(function() {
-
- return function generate(Promise) {
-
- var resolve = Promise.resolve;
-
- Promise.iterate = iterate;
- Promise.unfold = unfold;
-
- return Promise;
-
- /**
- * @deprecated Use github.com/cujojs/most streams and most.iterate
- * Generate a (potentially infinite) stream of promised values:
- * x, f(x), f(f(x)), etc. until condition(x) returns true
- * @param {function} f function to generate a new x from the previous x
- * @param {function} condition function that, given the current x, returns
- * truthy when the iterate should stop
- * @param {function} handler function to handle the value produced by f
- * @param {*|Promise} x starting value, may be a promise
- * @return {Promise} the result of the last call to f before
- * condition returns true
- */
- function iterate(f, condition, handler, x) {
- return unfold(function(x) {
- return [x, f(x)];
- }, condition, handler, x);
- }
-
- /**
- * @deprecated Use github.com/cujojs/most streams and most.unfold
- * Generate a (potentially infinite) stream of promised values
- * by applying handler(generator(seed)) iteratively until
- * condition(seed) returns true.
- * @param {function} unspool function that generates a [value, newSeed]
- * given a seed.
- * @param {function} condition function that, given the current seed, returns
- * truthy when the unfold should stop
- * @param {function} handler function to handle the value produced by unspool
- * @param x {*|Promise} starting value, may be a promise
- * @return {Promise} the result of the last value produced by unspool before
- * condition returns true
- */
- function unfold(unspool, condition, handler, x) {
- return resolve(x).then(function(seed) {
- return resolve(condition(seed)).then(function(done) {
- return done ? seed : resolve(unspool(seed)).spread(next);
- });
- });
-
- function next(item, newSeed) {
- return resolve(handler(item)).then(function() {
- return unfold(unspool, condition, handler, newSeed);
- });
- }
- }
- };
-
-});
-}(typeof define === 'function' && define.amd ? define : function(factory) { module.exports = factory(); }));
diff --git a/node_modules/when/lib/decorators/progress.js b/node_modules/when/lib/decorators/progress.js
deleted file mode 100644
index d45e3d0d..00000000
--- a/node_modules/when/lib/decorators/progress.js
+++ /dev/null
@@ -1,24 +0,0 @@
-/** @license MIT License (c) copyright 2010-2014 original author or authors */
-/** @author Brian Cavalier */
-/** @author John Hann */
-
-(function(define) { 'use strict';
-define(function() {
-
- return function progress(Promise) {
-
- /**
- * @deprecated
- * Register a progress handler for this promise
- * @param {function} onProgress
- * @returns {Promise}
- */
- Promise.prototype.progress = function(onProgress) {
- return this.then(void 0, void 0, onProgress);
- };
-
- return Promise;
- };
-
-});
-}(typeof define === 'function' && define.amd ? define : function(factory) { module.exports = factory(); }));
diff --git a/node_modules/when/lib/decorators/timed.js b/node_modules/when/lib/decorators/timed.js
deleted file mode 100644
index cd82ed43..00000000
--- a/node_modules/when/lib/decorators/timed.js
+++ /dev/null
@@ -1,78 +0,0 @@
-/** @license MIT License (c) copyright 2010-2014 original author or authors */
-/** @author Brian Cavalier */
-/** @author John Hann */
-
-(function(define) { 'use strict';
-define(function(require) {
-
- var env = require('../env');
- var TimeoutError = require('../TimeoutError');
-
- function setTimeout(f, ms, x, y) {
- return env.setTimer(function() {
- f(x, y, ms);
- }, ms);
- }
-
- return function timed(Promise) {
- /**
- * Return a new promise whose fulfillment value is revealed only
- * after ms milliseconds
- * @param {number} ms milliseconds
- * @returns {Promise}
- */
- Promise.prototype.delay = function(ms) {
- var p = this._beget();
- this._handler.fold(handleDelay, ms, void 0, p._handler);
- return p;
- };
-
- function handleDelay(ms, x, h) {
- setTimeout(resolveDelay, ms, x, h);
- }
-
- function resolveDelay(x, h) {
- h.resolve(x);
- }
-
- /**
- * Return a new promise that rejects after ms milliseconds unless
- * this promise fulfills earlier, in which case the returned promise
- * fulfills with the same value.
- * @param {number} ms milliseconds
- * @param {Error|*=} reason optional rejection reason to use, defaults
- * to a TimeoutError if not provided
- * @returns {Promise}
- */
- Promise.prototype.timeout = function(ms, reason) {
- var p = this._beget();
- var h = p._handler;
-
- var t = setTimeout(onTimeout, ms, reason, p._handler);
-
- this._handler.visit(h,
- function onFulfill(x) {
- env.clearTimer(t);
- this.resolve(x); // this = h
- },
- function onReject(x) {
- env.clearTimer(t);
- this.reject(x); // this = h
- },
- h.notify);
-
- return p;
- };
-
- function onTimeout(reason, h, ms) {
- var e = typeof reason === 'undefined'
- ? new TimeoutError('timed out after ' + ms + 'ms')
- : reason;
- h.reject(e);
- }
-
- return Promise;
- };
-
-});
-}(typeof define === 'function' && define.amd ? define : function(factory) { module.exports = factory(require); }));
diff --git a/node_modules/when/lib/decorators/unhandledRejection.js b/node_modules/when/lib/decorators/unhandledRejection.js
deleted file mode 100644
index 72f7e20c..00000000
--- a/node_modules/when/lib/decorators/unhandledRejection.js
+++ /dev/null
@@ -1,85 +0,0 @@
-/** @license MIT License (c) copyright 2010-2014 original author or authors */
-/** @author Brian Cavalier */
-/** @author John Hann */
-
-(function(define) { 'use strict';
-define(function(require) {
-
- var setTimer = require('../env').setTimer;
- var format = require('../format');
-
- return function unhandledRejection(Promise) {
- var logError = noop;
- var logInfo = noop;
- var localConsole;
-
- if(typeof console !== 'undefined') {
- // Alias console to prevent things like uglify's drop_console option from
- // removing console.log/error. Unhandled rejections fall into the same
- // category as uncaught exceptions, and build tools shouldn't silence them.
- localConsole = console;
- logError = typeof localConsole.error !== 'undefined'
- ? function (e) { localConsole.error(e); }
- : function (e) { localConsole.log(e); };
-
- logInfo = typeof localConsole.info !== 'undefined'
- ? function (e) { localConsole.info(e); }
- : function (e) { localConsole.log(e); };
- }
-
- Promise.onPotentiallyUnhandledRejection = function(rejection) {
- enqueue(report, rejection);
- };
-
- Promise.onPotentiallyUnhandledRejectionHandled = function(rejection) {
- enqueue(unreport, rejection);
- };
-
- Promise.onFatalRejection = function(rejection) {
- enqueue(throwit, rejection.value);
- };
-
- var tasks = [];
- var reported = [];
- var running = null;
-
- function report(r) {
- if(!r.handled) {
- reported.push(r);
- logError('Potentially unhandled rejection [' + r.id + '] ' + format.formatError(r.value));
- }
- }
-
- function unreport(r) {
- var i = reported.indexOf(r);
- if(i >= 0) {
- reported.splice(i, 1);
- logInfo('Handled previous rejection [' + r.id + '] ' + format.formatObject(r.value));
- }
- }
-
- function enqueue(f, x) {
- tasks.push(f, x);
- if(running === null) {
- running = setTimer(flush, 0);
- }
- }
-
- function flush() {
- running = null;
- while(tasks.length > 0) {
- tasks.shift()(tasks.shift());
- }
- }
-
- return Promise;
- };
-
- function throwit(e) {
- throw e;
- }
-
- function noop() {}
-
-});
-}(typeof define === 'function' && define.amd ? define : function(factory) { module.exports = factory(require); }));
diff --git a/node_modules/when/lib/decorators/with.js b/node_modules/when/lib/decorators/with.js
deleted file mode 100644
index a0f05f0b..00000000
--- a/node_modules/when/lib/decorators/with.js
+++ /dev/null
@@ -1,38 +0,0 @@
-/** @license MIT License (c) copyright 2010-2014 original author or authors */
-/** @author Brian Cavalier */
-/** @author John Hann */
-
-(function(define) { 'use strict';
-define(function() {
-
- return function addWith(Promise) {
- /**
- * Returns a promise whose handlers will be called with `this` set to
- * the supplied receiver. Subsequent promises derived from the
- * returned promise will also have their handlers called with receiver
- * as `this`. Calling `with` with undefined or no arguments will return
- * a promise whose handlers will again be called in the usual Promises/A+
- * way (no `this`) thus safely undoing any previous `with` in the
- * promise chain.
- *
- * WARNING: Promises returned from `with`/`withThis` are NOT Promises/A+
- * compliant, specifically violating 2.2.5 (http://promisesaplus.com/#point-41)
- *
- * @param {object} receiver `this` value for all handlers attached to
- * the returned promise.
- * @returns {Promise}
- */
- Promise.prototype['with'] = Promise.prototype.withThis = function(receiver) {
- var p = this._beget();
- var child = p._handler;
- child.receiver = receiver;
- this._handler.chain(child, receiver);
- return p;
- };
-
- return Promise;
- };
-
-});
-}(typeof define === 'function' && define.amd ? define : function(factory) { module.exports = factory(); }));
-