| 12345678910111213141516171819202122232425262728293031323334353637 |
- var baseIsNative = require('./_baseIsNative'),
- isMaskable = require('./_isMaskable');
- /**
- * Checks if `value` is a pristine native function.
- *
- * **Note:** This method can't reliably detect native functions in the
- * presence of the `core-js` package because `core-js` circumvents this kind
- * of detection. Despite multiple requests, the `core-js` maintainer has made
- * it clear: any attempt to fix the detection will be obstructed. As a result,
- * we're left with little choice but to throw an error. Unfortunately, this
- * also affects packages, like [babel-polyfill](https://www.npmjs.com/package/babel-polyfill),
- * which rely on `core-js`.
- *
- * @static
- * @memberOf _
- * @since 3.0.0
- * @category Lang
- * @param {*} value The value to check.
- * @returns {boolean} Returns `true` if `value` is a native function,
- * else `false`.
- * @example
- *
- * _.isNative(Array.prototype.push);
- * // => true
- *
- * _.isNative(_);
- * // => false
- */
- function isNative(value) {
- if (isMaskable(value)) {
- throw new Error('This method is not supported with `core-js`. Try https://github.com/es-shims.');
- }
- return baseIsNative(value);
- }
- module.exports = isNative;
|