Initial commit
[yaffs-website] / node_modules / node-sass / node_modules / lodash / _listCacheDelete.js
1 var assocIndexOf = require('./_assocIndexOf');
2
3 /** Used for built-in method references. */
4 var arrayProto = Array.prototype;
5
6 /** Built-in value references. */
7 var splice = arrayProto.splice;
8
9 /**
10  * Removes `key` and its value from the list cache.
11  *
12  * @private
13  * @name delete
14  * @memberOf ListCache
15  * @param {string} key The key of the value to remove.
16  * @returns {boolean} Returns `true` if the entry was removed, else `false`.
17  */
18 function listCacheDelete(key) {
19   var data = this.__data__,
20       index = assocIndexOf(data, key);
21
22   if (index < 0) {
23     return false;
24   }
25   var lastIndex = data.length - 1;
26   if (index == lastIndex) {
27     data.pop();
28   } else {
29     splice.call(data, index, 1);
30   }
31   --this.size;
32   return true;
33 }
34
35 module.exports = listCacheDelete;