mirror of
https://github.com/whoisclebs/lodash.git
synced 2026-01-29 06:27:49 +00:00
26 lines
658 B
JavaScript
26 lines
658 B
JavaScript
var isKeyable = require('./_isKeyable');
|
|
|
|
/** Used to stand-in for `undefined` hash values. */
|
|
var HASH_UNDEFINED = '__lodash_hash_undefined__';
|
|
|
|
/**
|
|
* Checks if `value` is in `cache`.
|
|
*
|
|
* @private
|
|
* @param {Object} cache The set cache to search.
|
|
* @param {*} value The value to search for.
|
|
* @returns {number} Returns `true` if `value` is found, else `false`.
|
|
*/
|
|
function cacheHas(cache, value) {
|
|
var map = cache.__data__;
|
|
if (isKeyable(value)) {
|
|
var data = map.__data__,
|
|
hash = typeof value == 'string' ? data.string : data.hash;
|
|
|
|
return hash[value] === HASH_UNDEFINED;
|
|
}
|
|
return map.has(value);
|
|
}
|
|
|
|
module.exports = cacheHas;
|