debian-mirror-gitlab/core-js/internals/new-promise-capability.js
2019-09-25 13:30:05 +05:30

18 lines
522 B
JavaScript

'use strict';
var aFunction = require('../internals/a-function');
var PromiseCapability = function (C) {
var resolve, reject;
this.promise = new C(function ($$resolve, $$reject) {
if (resolve !== undefined || reject !== undefined) throw TypeError('Bad Promise constructor');
resolve = $$resolve;
reject = $$reject;
});
this.resolve = aFunction(resolve);
this.reject = aFunction(reject);
};
// 25.4.1.5 NewPromiseCapability(C)
module.exports.f = function (C) {
return new PromiseCapability(C);
};