You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							68 lines
						
					
					
						
							1.8 KiB
						
					
					
				
			
		
		
	
	
							68 lines
						
					
					
						
							1.8 KiB
						
					
					
				| 'use strict';
 | |
| 
 | |
| 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']; |