UNPKG

pragmatic-fp-ts

Version:

Opinionated functional programming library with easy use in mind

16 lines (12 loc) 467 B
import { Mappable } from "./main.ts"; export function times<A>(repeats: number, fn: Mappable<number, A>): A[]; export function times(repeats: number): <A>(fn: Mappable<number, A>) => A[]; export function times<A>(repeats: number, fn?: Mappable<number, A>) { if (arguments.length === 1) return (f: Mappable<number, A>) => times(repeats, f); const result = Array(repeats); for (let i = 0; i < repeats; ++i) { result[i] = fn!(i); } return result; }