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.
		
		
		
		
		
			
	
	
		
			
				
					
						
							|  |  |  | 'use strict'; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | /** | 
					
						
							|  |  |  |  * Syntactic sugar for invoking a function and expanding an array for arguments. | 
					
						
							|  |  |  |  * | 
					
						
							|  |  |  |  * Common use case would be to use `Function.prototype.apply`. | 
					
						
							|  |  |  |  * | 
					
						
							|  |  |  |  *  ```js
 | 
					
						
							|  |  |  |  *  function f(x, y, z) {} | 
					
						
							|  |  |  |  *  var args = [1, 2, 3]; | 
					
						
							|  |  |  |  *  f.apply(null, args); | 
					
						
							|  |  |  |  *  ```
 | 
					
						
							|  |  |  |  * | 
					
						
							|  |  |  |  * With `spread` this example can be re-written. | 
					
						
							|  |  |  |  * | 
					
						
							|  |  |  |  *  ```js
 | 
					
						
							|  |  |  |  *  spread(function(x, y, z) {})([1, 2, 3]); | 
					
						
							|  |  |  |  *  ```
 | 
					
						
							|  |  |  |  * | 
					
						
							|  |  |  |  * @param {Function} callback | 
					
						
							|  |  |  |  * | 
					
						
							|  |  |  |  * @returns {Function} | 
					
						
							|  |  |  |  */ | 
					
						
							|  |  |  | export default function spread(callback) { | 
					
						
							|  |  |  |   return function wrap(arr) { | 
					
						
							|  |  |  |     return callback.apply(null, arr); | 
					
						
							|  |  |  |   }; | 
					
						
							|  |  |  | } |