action-debian-package/node_modules/ramda/es/juxt.js

29 lines
813 B
JavaScript
Raw Normal View History

2020-03-26 14:37:35 +00:00
import _curry1 from "./internal/_curry1.js";
import converge from "./converge.js";
/**
* juxt applies a list of functions to a list of values.
*
* @func
* @memberOf R
* @since v0.19.0
* @category Function
* @sig [(a, b, ..., m) -> n] -> ((a, b, ..., m) -> [n])
* @param {Array} fns An array of functions
* @return {Function} A function that returns a list of values after applying each of the original `fns` to its parameters.
* @see R.applySpec
* @example
*
* const getRange = R.juxt([Math.min, Math.max]);
* getRange(3, 4, 9, -3); //=> [-3, 9]
* @symb R.juxt([f, g, h])(a, b) = [f(a, b), g(a, b), h(a, b)]
*/
var juxt =
/*#__PURE__*/
_curry1(function juxt(fns) {
return converge(function () {
return Array.prototype.slice.call(arguments, 0);
}, fns);
});
export default juxt;