PageRenderTime 20ms CodeModel.GetById 11ms app.highlight 5ms RepoModel.GetById 1ms app.codeStats 1ms

/node_modules/lodash/_stackSet.js

https://bitbucket.org/coleman333/smartsite
JavaScript | 34 lines | 20 code | 3 blank | 11 comment | 3 complexity | 23c06bbd7ff9417adb32cead48ca8ba5 MD5 | raw file
 1var ListCache = require('./_ListCache'),
 2    Map = require('./_Map'),
 3    MapCache = require('./_MapCache');
 4
 5/** Used as the size to enable large array optimizations. */
 6var LARGE_ARRAY_SIZE = 200;
 7
 8/**
 9 * Sets the stack `key` to `value`.
10 *
11 * @private
12 * @name set
13 * @memberOf Stack
14 * @param {string} key The key of the value to set.
15 * @param {*} value The value to set.
16 * @returns {Object} Returns the stack cache instance.
17 */
18function stackSet(key, value) {
19  var data = this.__data__;
20  if (data instanceof ListCache) {
21    var pairs = data.__data__;
22    if (!Map || (pairs.length < LARGE_ARRAY_SIZE - 1)) {
23      pairs.push([key, value]);
24      this.size = ++data.size;
25      return this;
26    }
27    data = this.__data__ = new MapCache(pairs);
28  }
29  data.set(key, value);
30  this.size = data.size;
31  return this;
32}
33
34module.exports = stackSet;