Skip to main content
Module

x/ramda/aperture.js

:ram: Practical functional Javascript
Go to Latest
File
import _aperture from './internal/_aperture';import _curry2 from './internal/_curry2';import _dispatchable from './internal/_dispatchable';import _xaperture from './internal/_xaperture';

/** * Returns a new list, composed of n-tuples of consecutive elements. If `n` is * greater than the length of the list, an empty list is returned. * * Acts as a transducer if a transformer is given in list position. * * @func * @memberOf R * @since v0.12.0 * @category List * @sig Number -> [a] -> [[a]] * @param {Number} n The size of the tuples to create * @param {Array} list The list to split into `n`-length tuples * @return {Array} The resulting list of `n`-length tuples * @see R.transduce * @example * * R.aperture(2, [1, 2, 3, 4, 5]); //=> [[1, 2], [2, 3], [3, 4], [4, 5]] * R.aperture(3, [1, 2, 3, 4, 5]); //=> [[1, 2, 3], [2, 3, 4], [3, 4, 5]] * R.aperture(7, [1, 2, 3, 4, 5]); //=> [] */var aperture = _curry2(_dispatchable([], _xaperture, _aperture));export default aperture;