mirror of
https://github.com/swc-project/swc.git
synced 2024-12-21 04:32:01 +03:00
36 lines
955 B
TypeScript
36 lines
955 B
TypeScript
|
// Loaded from https://deno.land/x/ramda@v0.27.2/source/repeat.js
|
||
|
|
||
|
|
||
|
import _curry2 from './internal/_curry2.js';
|
||
|
import always from './always.js';
|
||
|
import times from './times.js';
|
||
|
|
||
|
|
||
|
/**
|
||
|
* Returns a fixed list of size `n` containing a specified identical value.
|
||
|
*
|
||
|
* @func
|
||
|
* @memberOf R
|
||
|
* @since v0.1.1
|
||
|
* @category List
|
||
|
* @sig a -> n -> [a]
|
||
|
* @param {*} value The value to repeat.
|
||
|
* @param {Number} n The desired size of the output list.
|
||
|
* @return {Array} A new array containing `n` `value`s.
|
||
|
* @see R.times
|
||
|
* @example
|
||
|
*
|
||
|
* R.repeat('hi', 5); //=> ['hi', 'hi', 'hi', 'hi', 'hi']
|
||
|
*
|
||
|
* const obj = {};
|
||
|
* const repeatedObjs = R.repeat(obj, 5); //=> [{}, {}, {}, {}, {}]
|
||
|
* repeatedObjs[0] === repeatedObjs[1]; //=> true
|
||
|
* @symb R.repeat(a, 0) = []
|
||
|
* @symb R.repeat(a, 1) = [a]
|
||
|
* @symb R.repeat(a, 2) = [a, a]
|
||
|
*/
|
||
|
var repeat = _curry2(function repeat(value, n) {
|
||
|
return times(always(value), n);
|
||
|
});
|
||
|
export default repeat;
|