mirror of
https://github.com/Alfresco/alfresco-ng2-components.git
synced 2025-07-31 17:38:48 +00:00
react app
This commit is contained in:
41
react-app/node_modules/lodash/internal/setData.js
generated
vendored
Normal file
41
react-app/node_modules/lodash/internal/setData.js
generated
vendored
Normal file
@@ -0,0 +1,41 @@
|
||||
var baseSetData = require('./baseSetData'),
|
||||
now = require('../date/now');
|
||||
|
||||
/** Used to detect when a function becomes hot. */
|
||||
var HOT_COUNT = 150,
|
||||
HOT_SPAN = 16;
|
||||
|
||||
/**
|
||||
* 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://code.google.com/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 = (function() {
|
||||
var count = 0,
|
||||
lastCalled = 0;
|
||||
|
||||
return function(key, value) {
|
||||
var stamp = now(),
|
||||
remaining = HOT_SPAN - (stamp - lastCalled);
|
||||
|
||||
lastCalled = stamp;
|
||||
if (remaining > 0) {
|
||||
if (++count >= HOT_COUNT) {
|
||||
return key;
|
||||
}
|
||||
} else {
|
||||
count = 0;
|
||||
}
|
||||
return baseSetData(key, value);
|
||||
};
|
||||
}());
|
||||
|
||||
module.exports = setData;
|
Reference in New Issue
Block a user