|
|
- import _curry3 from "./internal/_curry3.js";
- /**
- * Tests the final argument by passing it to the given predicate function. If
- * the predicate is not satisfied, the function will return the result of
- * calling the `whenFalseFn` function with the same argument. If the predicate
- * is satisfied, the argument is returned as is.
- *
- * @func
- * @memberOf R
- * @since v0.18.0
- * @category Logic
- * @sig (a -> Boolean) -> (a -> a) -> a -> a
- * @param {Function} pred A predicate function
- * @param {Function} whenFalseFn A function to invoke when the `pred` evaluates
- * to a falsy value.
- * @param {*} x An object to test with the `pred` function and
- * pass to `whenFalseFn` if necessary.
- * @return {*} Either `x` or the result of applying `x` to `whenFalseFn`.
- * @see R.ifElse, R.when, R.cond
- * @example
- *
- * let safeInc = R.unless(R.isNil, R.inc);
- * safeInc(null); //=> null
- * safeInc(1); //=> 2
- */
-
- var unless =
- /*#__PURE__*/
- _curry3(function unless(pred, whenFalseFn, x) {
- return pred(x) ? x : whenFalseFn(x);
- });
-
- export default unless;
|