You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							40 lines
						
					
					
						
							1.2 KiB
						
					
					
				
			
		
		
	
	
							40 lines
						
					
					
						
							1.2 KiB
						
					
					
				var baseIsNative = require('./_baseIsNative'), | 
						|
    isMaskable = require('./_isMaskable'); | 
						|
 | 
						|
/** Error message constants. */ | 
						|
var CORE_ERROR_TEXT = 'Unsupported core-js use. Try https://npms.io/search?q=ponyfill.'; | 
						|
 | 
						|
/** | 
						|
 * 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(CORE_ERROR_TEXT); | 
						|
  } | 
						|
  return baseIsNative(value); | 
						|
} | 
						|
 | 
						|
module.exports = isNative;
 | 
						|
 |