update
This commit is contained in:
parent
d9becc67b6
commit
9308795b8b
964 changed files with 104265 additions and 16 deletions
43
node_modules/ramda/es/uncurryN.js
generated
vendored
Normal file
43
node_modules/ramda/es/uncurryN.js
generated
vendored
Normal file
|
@ -0,0 +1,43 @@
|
|||
import _curry2 from "./internal/_curry2.js";
|
||||
import curryN from "./curryN.js";
|
||||
/**
|
||||
* Returns a function of arity `n` from a (manually) curried function.
|
||||
*
|
||||
* @func
|
||||
* @memberOf R
|
||||
* @since v0.14.0
|
||||
* @category Function
|
||||
* @sig Number -> (a -> b) -> (a -> c)
|
||||
* @param {Number} length The arity for the returned function.
|
||||
* @param {Function} fn The function to uncurry.
|
||||
* @return {Function} A new function.
|
||||
* @see R.curry
|
||||
* @example
|
||||
*
|
||||
* const addFour = a => b => c => d => a + b + c + d;
|
||||
*
|
||||
* const uncurriedAddFour = R.uncurryN(4, addFour);
|
||||
* uncurriedAddFour(1, 2, 3, 4); //=> 10
|
||||
*/
|
||||
|
||||
var uncurryN =
|
||||
/*#__PURE__*/
|
||||
_curry2(function uncurryN(depth, fn) {
|
||||
return curryN(depth, function () {
|
||||
var currentDepth = 1;
|
||||
var value = fn;
|
||||
var idx = 0;
|
||||
var endIdx;
|
||||
|
||||
while (currentDepth <= depth && typeof value === 'function') {
|
||||
endIdx = currentDepth === depth ? arguments.length : idx + value.length;
|
||||
value = value.apply(this, Array.prototype.slice.call(arguments, idx, endIdx));
|
||||
currentDepth += 1;
|
||||
idx = endIdx;
|
||||
}
|
||||
|
||||
return value;
|
||||
});
|
||||
});
|
||||
|
||||
export default uncurryN;
|
Loading…
Add table
Add a link
Reference in a new issue