"Fossies" - the Fresh Open Source Software Archive

Member "Atom/resources/app/apm/node_modules/lodash._cacheindexof/index.js" (8 Mar 2017, 1655 Bytes) of archive /windows/misc/atom-windows.zip:


As a special service "Fossies" has tried to format the requested source page into HTML format using (guessed) Javascript source code syntax highlighting (style: standard) with prefixed line numbers and code folding option. Alternatively you can here view or download the uninterpreted source code file.

    1 /**
    2  * lodash 3.0.2 (Custom Build) <https://lodash.com/>
    3  * Build: `lodash modern modularize exports="npm" -o ./`
    4  * Copyright 2012-2015 The Dojo Foundation <http://dojofoundation.org/>
    5  * Based on Underscore.js 1.8.3 <http://underscorejs.org/LICENSE>
    6  * Copyright 2009-2015 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
    7  * Available under MIT license <https://lodash.com/license>
    8  */
    9 
   10 /**
   11  * Checks if `value` is in `cache` mimicking the return signature of
   12  * `_.indexOf` by returning `0` if the value is found, else `-1`.
   13  *
   14  * @private
   15  * @param {Object} cache The cache to search.
   16  * @param {*} value The value to search for.
   17  * @returns {number} Returns `0` if `value` is found, else `-1`.
   18  */
   19 function cacheIndexOf(cache, value) {
   20   var data = cache.data,
   21       result = (typeof value == 'string' || isObject(value)) ? data.set.has(value) : data.hash[value];
   22 
   23   return result ? 0 : -1;
   24 }
   25 
   26 /**
   27  * Checks if `value` is the [language type](https://es5.github.io/#x8) of `Object`.
   28  * (e.g. arrays, functions, objects, regexes, `new Number(0)`, and `new String('')`)
   29  *
   30  * @static
   31  * @memberOf _
   32  * @category Lang
   33  * @param {*} value The value to check.
   34  * @returns {boolean} Returns `true` if `value` is an object, else `false`.
   35  * @example
   36  *
   37  * _.isObject({});
   38  * // => true
   39  *
   40  * _.isObject([1, 2, 3]);
   41  * // => true
   42  *
   43  * _.isObject(1);
   44  * // => false
   45  */
   46 function isObject(value) {
   47   // Avoid a V8 JIT bug in Chrome 19-20.
   48   // See https://code.google.com/p/v8/issues/detail?id=2291 for more details.
   49   var type = typeof value;
   50   return !!value && (type == 'object' || type == 'function');
   51 }
   52 
   53 module.exports = cacheIndexOf;