From 6070b6512e1500006904d4ec228afcd9f7a5cb9f Mon Sep 17 00:00:00 2001 From: Scott Richmond Date: Thu, 30 Nov 2023 11:58:04 -0500 Subject: [PATCH] Add `if let` back in --- src/ludus/grammar.cljc | 22 ++++++++++++---------- 1 file changed, 12 insertions(+), 10 deletions(-) diff --git a/src/ludus/grammar.cljc b/src/ludus/grammar.cljc index f927ffd..d1f15d2 100644 --- a/src/ludus/grammar.cljc +++ b/src/ludus/grammar.cljc @@ -89,16 +89,6 @@ (quiet :rbrace) ]) -(defp if-expr group order-1 [(quiet :if) - nls? - simple - nls? - (quiet :then) - expression - nls? - (quiet :else) - expression]) - (defp when-lhs flat choice [simple :placeholder :else]) (defp when-clause group weak-order [when-lhs (quiet :rarrow) expression]) @@ -116,6 +106,18 @@ nls? non-binding]) +(defp condition flat choice [simple let-expr]) + +(defp if-expr group order-1 [(quiet :if) + nls? + condition + nls? + (quiet :then) + expression + nls? + (quiet :else) + expression]) + (defp tuple-entry weak-order [non-binding separators]) (defp tuple group order-1 [(quiet :lparen)