Spaces:
Sleeping
Sleeping
; | |
Object.defineProperty(exports, "__esModule", { | |
value: true | |
}); | |
exports.default = function (fn /*, ...args*/) { | |
var args = (0, _slice2.default)(arguments, 1); | |
return function () /*callArgs*/{ | |
var callArgs = (0, _slice2.default)(arguments); | |
return fn.apply(null, args.concat(callArgs)); | |
}; | |
}; | |
var _slice = require('./internal/slice'); | |
var _slice2 = _interopRequireDefault(_slice); | |
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } | |
; | |
/** | |
* Creates a continuation function with some arguments already applied. | |
* | |
* Useful as a shorthand when combined with other control flow functions. Any | |
* arguments passed to the returned function are added to the arguments | |
* originally passed to apply. | |
* | |
* @name apply | |
* @static | |
* @memberOf module:Utils | |
* @method | |
* @category Util | |
* @param {Function} fn - The function you want to eventually apply all | |
* arguments to. Invokes with (arguments...). | |
* @param {...*} arguments... - Any number of arguments to automatically apply | |
* when the continuation is called. | |
* @returns {Function} the partially-applied function | |
* @example | |
* | |
* // using apply | |
* async.parallel([ | |
* async.apply(fs.writeFile, 'testfile1', 'test1'), | |
* async.apply(fs.writeFile, 'testfile2', 'test2') | |
* ]); | |
* | |
* | |
* // the same process without using apply | |
* async.parallel([ | |
* function(callback) { | |
* fs.writeFile('testfile1', 'test1', callback); | |
* }, | |
* function(callback) { | |
* fs.writeFile('testfile2', 'test2', callback); | |
* } | |
* ]); | |
* | |
* // It's possible to pass any number of additional arguments when calling the | |
* // continuation: | |
* | |
* node> var fn = async.apply(sys.puts, 'one'); | |
* node> fn('two', 'three'); | |
* one | |
* two | |
* three | |
*/ | |
module.exports = exports['default']; |