From 4dc47946738f47ee4f1cedf7e1325b38a7fe78d6 Mon Sep 17 00:00:00 2001 From: Nat Quayle Nelson Date: Tue, 30 Nov 2021 12:44:27 -0700 Subject: [PATCH] (isListExp) predicate --- src/kiss/Kiss.hx | 3 ++- src/kiss/Prelude.hx | 11 ++++++++++- 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/src/kiss/Kiss.hx b/src/kiss/Kiss.hx index 67f1523..eb33e1d 100644 --- a/src/kiss/Kiss.hx +++ b/src/kiss/Kiss.hx @@ -111,7 +111,8 @@ class Kiss { "zipThrow" => Symbol("Prelude.zipThrow"), "joinPath" => Symbol("Prelude.joinPath"), "readDirectory" => Symbol("Prelude.readDirectory"), - "substr" => Symbol("Prelude.substr") + "substr" => Symbol("Prelude.substr"), + "isListExp" => Symbol("Prelude.isListExp") ], fieldList: [], fieldDict: new Map(), diff --git a/src/kiss/Prelude.hx b/src/kiss/Prelude.hx index 88682f5..de58227 100644 --- a/src/kiss/Prelude.hx +++ b/src/kiss/Prelude.hx @@ -420,7 +420,16 @@ class Prelude { case ListExp(exps): exps; default: throw 'expected $s to be a list expression'; - } + }; + } + + public static function isListExp(s:ReaderExp):Bool { + return switch (s.def) { + case ListExp(exps): + true; + default: + false; + }; } #if sys