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.
		
		
		
		
		
			
		
			
				
					
					
						
							107 lines
						
					
					
						
							3.0 KiB
						
					
					
				
			
		
		
	
	
							107 lines
						
					
					
						
							3.0 KiB
						
					
					
				// Copyright Joyent, Inc. and other Node contributors. | 
						|
// | 
						|
// Permission is hereby granted, free of charge, to any person obtaining a | 
						|
// copy of this software and associated documentation files (the | 
						|
// "Software"), to deal in the Software without restriction, including | 
						|
// without limitation the rights to use, copy, modify, merge, publish, | 
						|
// distribute, sublicense, and/or sell copies of the Software, and to permit | 
						|
// persons to whom the Software is furnished to do so, subject to the | 
						|
// following conditions: | 
						|
// | 
						|
// The above copyright notice and this permission notice shall be included | 
						|
// in all copies or substantial portions of the Software. | 
						|
// | 
						|
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS | 
						|
// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF | 
						|
// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN | 
						|
// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, | 
						|
// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR | 
						|
// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE | 
						|
// USE OR OTHER DEALINGS IN THE SOFTWARE. | 
						|
 | 
						|
// NOTE: These type checking functions intentionally don't use `instanceof` | 
						|
// because it is fragile and can be easily faked with `Object.create()`. | 
						|
 | 
						|
function isArray(arg) { | 
						|
  if (Array.isArray) { | 
						|
    return Array.isArray(arg); | 
						|
  } | 
						|
  return objectToString(arg) === '[object Array]'; | 
						|
} | 
						|
exports.isArray = isArray; | 
						|
 | 
						|
function isBoolean(arg) { | 
						|
  return typeof arg === 'boolean'; | 
						|
} | 
						|
exports.isBoolean = isBoolean; | 
						|
 | 
						|
function isNull(arg) { | 
						|
  return arg === null; | 
						|
} | 
						|
exports.isNull = isNull; | 
						|
 | 
						|
function isNullOrUndefined(arg) { | 
						|
  return arg == null; | 
						|
} | 
						|
exports.isNullOrUndefined = isNullOrUndefined; | 
						|
 | 
						|
function isNumber(arg) { | 
						|
  return typeof arg === 'number'; | 
						|
} | 
						|
exports.isNumber = isNumber; | 
						|
 | 
						|
function isString(arg) { | 
						|
  return typeof arg === 'string'; | 
						|
} | 
						|
exports.isString = isString; | 
						|
 | 
						|
function isSymbol(arg) { | 
						|
  return typeof arg === 'symbol'; | 
						|
} | 
						|
exports.isSymbol = isSymbol; | 
						|
 | 
						|
function isUndefined(arg) { | 
						|
  return arg === void 0; | 
						|
} | 
						|
exports.isUndefined = isUndefined; | 
						|
 | 
						|
function isRegExp(re) { | 
						|
  return objectToString(re) === '[object RegExp]'; | 
						|
} | 
						|
exports.isRegExp = isRegExp; | 
						|
 | 
						|
function isObject(arg) { | 
						|
  return typeof arg === 'object' && arg !== null; | 
						|
} | 
						|
exports.isObject = isObject; | 
						|
 | 
						|
function isDate(d) { | 
						|
  return objectToString(d) === '[object Date]'; | 
						|
} | 
						|
exports.isDate = isDate; | 
						|
 | 
						|
function isError(e) { | 
						|
  return (objectToString(e) === '[object Error]' || e instanceof Error); | 
						|
} | 
						|
exports.isError = isError; | 
						|
 | 
						|
function isFunction(arg) { | 
						|
  return typeof arg === 'function'; | 
						|
} | 
						|
exports.isFunction = isFunction; | 
						|
 | 
						|
function isPrimitive(arg) { | 
						|
  return arg === null || | 
						|
         typeof arg === 'boolean' || | 
						|
         typeof arg === 'number' || | 
						|
         typeof arg === 'string' || | 
						|
         typeof arg === 'symbol' ||  // ES6 symbol | 
						|
         typeof arg === 'undefined'; | 
						|
} | 
						|
exports.isPrimitive = isPrimitive; | 
						|
 | 
						|
exports.isBuffer = Buffer.isBuffer; | 
						|
 | 
						|
function objectToString(o) { | 
						|
  return Object.prototype.toString.call(o); | 
						|
}
 | 
						|
 |