mirror of
https://github.com/whoisclebs/lodash.git
synced 2026-02-13 20:37:48 +00:00
Bump to v3.1.0.
This commit is contained in:
committed by
John-David Dalton
parent
f11f2385a6
commit
27d65e814a
@@ -1,54 +1,34 @@
|
||||
/**
|
||||
* lodash 3.0.2 (Custom Build) <https://lodash.com/>
|
||||
* Build: `lodash modern modularize exports="npm" -o ./`
|
||||
* Copyright 2012-2015 The Dojo Foundation <http://dojofoundation.org/>
|
||||
* lodash 3.1.0 (Custom Build) <https://lodash.com/>
|
||||
* Build: `lodash modularize exports="npm" -o ./`
|
||||
* Copyright 2012-2016 The Dojo Foundation <http://dojofoundation.org/>
|
||||
* Based on Underscore.js 1.8.3 <http://underscorejs.org/LICENSE>
|
||||
* Copyright 2009-2015 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
|
||||
* Copyright 2009-2016 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
|
||||
* Available under MIT license <https://lodash.com/license>
|
||||
*/
|
||||
var createWrapper = require('lodash._createwrapper'),
|
||||
isIterateeCall = require('lodash._isiterateecall');
|
||||
var createWrapper = require('lodash._createwrapper');
|
||||
|
||||
/** Used to compose bitmasks for wrapper metadata. */
|
||||
var CURRY_FLAG = 8;
|
||||
|
||||
/**
|
||||
* Creates a `_.curry` or `_.curryRight` function.
|
||||
*
|
||||
* @private
|
||||
* @param {boolean} flag The curry bit flag.
|
||||
* @returns {Function} Returns the new curry function.
|
||||
*/
|
||||
function createCurry(flag) {
|
||||
function curryFunc(func, arity, guard) {
|
||||
if (guard && isIterateeCall(func, arity, guard)) {
|
||||
arity = undefined;
|
||||
}
|
||||
var result = createWrapper(func, flag, undefined, undefined, undefined, undefined, undefined, arity);
|
||||
result.placeholder = curryFunc.placeholder;
|
||||
return result;
|
||||
}
|
||||
return curryFunc;
|
||||
}
|
||||
|
||||
/**
|
||||
* Creates a function that accepts one or more arguments of `func` that when
|
||||
* called either invokes `func` returning its result, if all `func` arguments
|
||||
* have been provided, or returns a function that accepts one or more of the
|
||||
* remaining `func` arguments, and so on. The arity of `func` may be specified
|
||||
* if `func.length` is not sufficient.
|
||||
* Creates a function that accepts arguments of `func` and either invokes
|
||||
* `func` returning its result, if at least `arity` number of arguments have
|
||||
* been provided, or returns a function that accepts the remaining `func`
|
||||
* arguments, and so on. The arity of `func` may be specified if `func.length`
|
||||
* is not sufficient.
|
||||
*
|
||||
* The `_.curry.placeholder` value, which defaults to `_` in monolithic builds,
|
||||
* may be used as a placeholder for provided arguments.
|
||||
*
|
||||
* **Note:** This method does not set the "length" property of curried functions.
|
||||
* **Note:** This method doesn't set the "length" property of curried functions.
|
||||
*
|
||||
* @static
|
||||
* @memberOf _
|
||||
* @category Function
|
||||
* @param {Function} func The function to curry.
|
||||
* @param {number} [arity=func.length] The arity of `func`.
|
||||
* @param- {Object} [guard] Enables use as a callback for functions like `_.map`.
|
||||
* @param- {Object} [guard] Enables use as an iteratee for functions like `_.map`.
|
||||
* @returns {Function} Returns the new curried function.
|
||||
* @example
|
||||
*
|
||||
@@ -67,13 +47,15 @@ function createCurry(flag) {
|
||||
* curried(1, 2, 3);
|
||||
* // => [1, 2, 3]
|
||||
*
|
||||
* // using placeholders
|
||||
* // Curried with placeholders.
|
||||
* curried(1)(_, 3)(2);
|
||||
* // => [1, 2, 3]
|
||||
*/
|
||||
var curry = createCurry(CURRY_FLAG);
|
||||
|
||||
// Assign default placeholders.
|
||||
curry.placeholder = {};
|
||||
function curry(func, arity, guard) {
|
||||
arity = guard ? undefined : arity;
|
||||
var result = createWrapper(func, CURRY_FLAG, undefined, undefined, undefined, undefined, undefined, arity);
|
||||
result.placeholder = curry.placeholder;
|
||||
return result;
|
||||
}
|
||||
|
||||
module.exports = curry;
|
||||
|
||||
Reference in New Issue
Block a user