mirror of
https://github.com/whoisclebs/lodash.git
synced 2026-01-29 14:37:49 +00:00
33 lines
775 B
JavaScript
33 lines
775 B
JavaScript
import stackClear from './_stackClear';
|
|
import stackDelete from './_stackDelete';
|
|
import stackGet from './_stackGet';
|
|
import stackHas from './_stackHas';
|
|
import stackSet from './_stackSet';
|
|
|
|
/**
|
|
* Creates a stack cache object to store key-value pairs.
|
|
*
|
|
* @private
|
|
* @constructor
|
|
* @param {Array} [values] The values to cache.
|
|
*/
|
|
function Stack(values) {
|
|
var index = -1,
|
|
length = values ? values.length : 0;
|
|
|
|
this.clear();
|
|
while (++index < length) {
|
|
var entry = values[index];
|
|
this.set(entry[0], entry[1]);
|
|
}
|
|
}
|
|
|
|
// Add functions to the `Stack` cache.
|
|
Stack.prototype.clear = stackClear;
|
|
Stack.prototype['delete'] = stackDelete;
|
|
Stack.prototype.get = stackGet;
|
|
Stack.prototype.has = stackHas;
|
|
Stack.prototype.set = stackSet;
|
|
|
|
export default Stack;
|