test-action-debian-package/node_modules/ramda/es/set.js

33 lines
799 B
JavaScript
Raw Normal View History

2020-03-26 14:37:35 +00:00
import _curry3 from "./internal/_curry3.js";
import always from "./always.js";
import over from "./over.js";
/**
* Returns the result of "setting" the portion of the given data structure
* focused by the given lens to the given value.
*
* @func
* @memberOf R
* @since v0.16.0
* @category Object
* @typedefn Lens s a = Functor f => (a -> f a) -> s -> f s
* @sig Lens s a -> a -> s -> s
* @param {Lens} lens
* @param {*} v
* @param {*} x
* @return {*}
* @see R.prop, R.lensIndex, R.lensProp
* @example
*
* const xLens = R.lensProp('x');
*
* R.set(xLens, 4, {x: 1, y: 2}); //=> {x: 4, y: 2}
* R.set(xLens, 8, {x: 1, y: 2}); //=> {x: 8, y: 2}
*/
var set =
/*#__PURE__*/
_curry3(function set(lens, v, x) {
return over(lens, always(v), x);
});
export default set;