From 346dcbecc20802f7bc86b5a8c4ca2d1c4bed37c0 Mon Sep 17 00:00:00 2001 From: Oscar Najera Date: Sun, 9 Feb 2025 16:15:06 +0100 Subject: for of syntax --- webstats/server.lisp | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'webstats/server.lisp') diff --git a/webstats/server.lisp b/webstats/server.lisp index 148f0aa..4fecc1f 100644 --- a/webstats/server.lisp +++ b/webstats/server.lisp @@ -9,6 +9,14 @@ (in-package :webstats-js) (setf *js-target-version* "1.9") +(ps::define-statement-operator for-of ((var iterable) &rest body) + `(ps-js::for-of ,(ps::compile-expression var) + ,(ps::compile-expression iterable) + ,(ps::compile-loop-body (list var) body))) + +(ps::defprinter ps-js::for-of (var object body-block) + "for (const "(ps::ps-print var)" of "(ps::ps-print object)") " + (ps::ps-print body-block)) (in-package :webstats) (overlord:set-package-base "/home/titan/dev/scratch/webstats/") -- cgit v1.2.3