UNPKG

632 BJavaScriptView Raw
1var MapCache = require('./_MapCache'),
2 setCacheAdd = require('./_setCacheAdd'),
3 setCacheHas = require('./_setCacheHas');
4
5/**
6 *
7 * Creates an array cache object to store unique values.
8 *
9 * @private
10 * @constructor
11 * @param {Array} [values] The values to cache.
12 */
13function SetCache(values) {
14 var index = -1,
15 length = values == null ? 0 : values.length;
16
17 this.__data__ = new MapCache;
18 while (++index < length) {
19 this.add(values[index]);
20 }
21}
22
23// Add methods to `SetCache`.
24SetCache.prototype.add = SetCache.prototype.push = setCacheAdd;
25SetCache.prototype.has = setCacheHas;
26
27module.exports = SetCache;