21 lines
		
	
	
		
			645 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
		
		
			
		
	
	
			21 lines
		
	
	
		
			645 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
|  | var baseSetData = require('./_baseSetData'), | ||
|  |     shortOut = require('./_shortOut'); | ||
|  | 
 | ||
|  | /** | ||
|  |  * Sets metadata for `func`. | ||
|  |  * | ||
|  |  * **Note:** If this function becomes hot, i.e. is invoked a lot in a short | ||
|  |  * period of time, it will trip its breaker and transition to an identity | ||
|  |  * function to avoid garbage collection pauses in V8. See | ||
|  |  * [V8 issue 2070](https://bugs.chromium.org/p/v8/issues/detail?id=2070)
 | ||
|  |  * for more details. | ||
|  |  * | ||
|  |  * @private | ||
|  |  * @param {Function} func The function to associate metadata with. | ||
|  |  * @param {*} data The metadata. | ||
|  |  * @returns {Function} Returns `func`. | ||
|  |  */ | ||
|  | var setData = shortOut(baseSetData); | ||
|  | 
 | ||
|  | module.exports = setData; |