From 928d359dd29be509c1cb2ebeca7c4dea4e550089 Mon Sep 17 00:00:00 2001 From: Aya Morisawa Date: Sun, 2 Dec 2018 20:28:22 +0900 Subject: Use takeWhile instead of some (#3475) --- src/prelude/array.ts | 12 ++++++++++++ 1 file changed, 12 insertions(+) (limited to 'src/prelude') diff --git a/src/prelude/array.ts b/src/prelude/array.ts index 09457d2d0a..5f694b1d31 100644 --- a/src/prelude/array.ts +++ b/src/prelude/array.ts @@ -57,3 +57,15 @@ export function lessThan(xs: number[], ys: number[]): boolean { } return xs.length < ys.length; } + +export function takeWhile(f: (x: T) => boolean, xs: T[]): T[] { + const ys = []; + for (const x of xs) { + if (f(x)) { + ys.push(x); + } else { + break; + } + } + return ys; +} -- cgit v1.2.3-freya