line_push/node_modules/hard-source-webpack-plugin/lib/util/promisify.js
2022-07-17 13:16:16 +08:00

16 lines
431 B
JavaScript

module.exports = function promisify(f, o) {
const ctx = (o && o.context) || null;
return function promisify_wrap() {
const args = Array.from(arguments);
return new Promise(function promisify_resolver(resolve, reject) {
args.push(function promisify_callback(err, value) {
if (err) {
return reject(err);
}
return resolve(value);
});
f.apply(ctx, args);
});
};
};