| var _curry1 = |
| /*#__PURE__*/ |
| require("./internal/_curry1"); |
| |
| var nAry = |
| /*#__PURE__*/ |
| require("./nAry"); |
| /** |
| * Wraps a function of any arity (including nullary) in a function that accepts |
| * exactly 2 parameters. Any extraneous parameters will not be passed to the |
| * supplied function. |
| * |
| * @func |
| * @memberOf R |
| * @since v0.2.0 |
| * @category Function |
| * @sig (* -> c) -> (a, b -> c) |
| * @param {Function} fn The function to wrap. |
| * @return {Function} A new function wrapping `fn`. The new function is guaranteed to be of |
| * arity 2. |
| * @see R.nAry, R.unary |
| * @example |
| * |
| * const takesThreeArgs = function(a, b, c) { |
| * return [a, b, c]; |
| * }; |
| * takesThreeArgs.length; //=> 3 |
| * takesThreeArgs(1, 2, 3); //=> [1, 2, 3] |
| * |
| * const takesTwoArgs = R.binary(takesThreeArgs); |
| * takesTwoArgs.length; //=> 2 |
| * // Only 2 arguments are passed to the wrapped function |
| * takesTwoArgs(1, 2, 3); //=> [1, 2, undefined] |
| * @symb R.binary(f)(a, b, c) = f(a, b) |
| */ |
| |
| |
| var binary = |
| /*#__PURE__*/ |
| _curry1(function binary(fn) { |
| return nAry(2, fn); |
| }); |
| |
| module.exports = binary; |