From 9e947a626adf6abf94b8f5a68b2fa6986a30dc1f Mon Sep 17 00:00:00 2001 From: Nat Quayle Nelson Date: Thu, 12 Aug 2021 18:49:36 -0600 Subject: [PATCH] Prelude.filter --- src/kiss/Kiss.hx | 2 +- src/kiss/Prelude.hx | 6 ++++++ 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/src/kiss/Kiss.hx b/src/kiss/Kiss.hx index b96ed37..afaf020 100644 --- a/src/kiss/Kiss.hx +++ b/src/kiss/Kiss.hx @@ -70,7 +70,7 @@ class Kiss { "symbol" => Symbol("Prelude.symbol"), "expList" => Symbol("Prelude.expList"), "map" => Symbol("Lambda.map"), - "filter" => Symbol("Lambda.filter"), // TODO use truthy as the default filter function + "filter" => Symbol("Prelude.filter"), "flatten" => Symbol("Lambda.flatten"), "has" => Symbol("Lambda.has"), "count" => Symbol("Lambda.count"), diff --git a/src/kiss/Prelude.hx b/src/kiss/Prelude.hx index d67e214..009905a 100644 --- a/src/kiss/Prelude.hx +++ b/src/kiss/Prelude.hx @@ -517,4 +517,10 @@ class Prelude { throw "Can't run a subprocess on this target."; #end } + + public static function filter(l:Iterable, ?p:(T) -> Bool):kiss.List { + if (p == null) + p = Prelude.truthy; + return Lambda.filter(l, p); + } }