2016-05-07 11:49:46 -07:00
|
|
|
define(['./_listCacheClear', './_listCacheDelete', './_listCacheGet', './_listCacheHas', './_listCacheSet'], function(listCacheClear, listCacheDelete, listCacheGet, listCacheHas, listCacheSet) {
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* Creates an list cache object.
|
|
|
|
|
*
|
|
|
|
|
* @private
|
|
|
|
|
* @constructor
|
|
|
|
|
* @param {Array} [entries] The key-value pairs to cache.
|
|
|
|
|
*/
|
|
|
|
|
function ListCache(entries) {
|
|
|
|
|
var index = -1,
|
2016-10-30 20:06:57 -07:00
|
|
|
length = entries == null ? 0 : entries.length;
|
2016-05-07 11:49:46 -07:00
|
|
|
|
|
|
|
|
this.clear();
|
|
|
|
|
while (++index < length) {
|
|
|
|
|
var entry = entries[index];
|
|
|
|
|
this.set(entry[0], entry[1]);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// Add methods to `ListCache`.
|
|
|
|
|
ListCache.prototype.clear = listCacheClear;
|
|
|
|
|
ListCache.prototype['delete'] = listCacheDelete;
|
|
|
|
|
ListCache.prototype.get = listCacheGet;
|
|
|
|
|
ListCache.prototype.has = listCacheHas;
|
|
|
|
|
ListCache.prototype.set = listCacheSet;
|
|
|
|
|
|
|
|
|
|
return ListCache;
|
|
|
|
|
});
|