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.
		
		
		
		
		
			
		
			
				
					28 lines
				
				802 B
			
		
		
			
		
	
	
					28 lines
				
				802 B
			| 
											3 years ago
										 | var _setup = require('./_setup.js'); | ||
|  | 
 | ||
|  | // If Underscore is called as a function, it returns a wrapped object that can
 | ||
|  | // be used OO-style. This wrapper holds altered versions of all functions added
 | ||
|  | // through `_.mixin`. Wrapped objects may be chained.
 | ||
|  | function _(obj) { | ||
|  |   if (obj instanceof _) return obj; | ||
|  |   if (!(this instanceof _)) return new _(obj); | ||
|  |   this._wrapped = obj; | ||
|  | } | ||
|  | 
 | ||
|  | _.VERSION = _setup.VERSION; | ||
|  | 
 | ||
|  | // Extracts the result from a wrapped and chained object.
 | ||
|  | _.prototype.value = function() { | ||
|  |   return this._wrapped; | ||
|  | }; | ||
|  | 
 | ||
|  | // Provide unwrapping proxies for some methods used in engine operations
 | ||
|  | // such as arithmetic and JSON stringification.
 | ||
|  | _.prototype.valueOf = _.prototype.toJSON = _.prototype.value; | ||
|  | 
 | ||
|  | _.prototype.toString = function() { | ||
|  |   return String(this._wrapped); | ||
|  | }; | ||
|  | 
 | ||
|  | module.exports = _; |