aboutsummaryrefslogtreecommitdiffstats
path: root/testcases-cons
diff options
context:
space:
mode:
authorKaz Kylheku <kaz@kylheku.com>2022-04-18 06:41:44 -0700
committerKaz Kylheku <kaz@kylheku.com>2022-04-18 06:41:44 -0700
commit94f84584fcb35de610f3c2b7a82164da7f6bcc65 (patch)
tree5f2e4d9c808cf29cd01dd6aede86f79b9eb80618 /testcases-cons
parent0d1fef12970e5850be29d331d525a77195d6b40b (diff)
downloadcppawk-94f84584fcb35de610f3c2b7a82164da7f6bcc65.tar.gz
cppawk-94f84584fcb35de610f3c2b7a82164da7f6bcc65.tar.bz2
cppawk-94f84584fcb35de610f3c2b7a82164da7f6bcc65.zip
cons: bags macro: document, test.
Diffstat (limited to 'testcases-cons')
-rw-r--r--testcases-cons24
1 files changed, 24 insertions, 0 deletions
diff --git a/testcases-cons b/testcases-cons
index 76be7c8..e945478 100644
--- a/testcases-cons
+++ b/testcases-cons
@@ -849,3 +849,27 @@ nil
3
("a" 1 2)
("a" 1 2 . 3)
+--
+44:
+$cppawk '
+#include <cons.h>
+
+BEGIN {
+ bags (vals, squares, sums) {
+ acc = 0
+ for (i = 0; i < 5; i++) {
+ bag (vals, i)
+ bag (squares, i*i)
+ bag (sums, acc += i)
+ }
+ }
+
+ // the bags variables are now
+ print sexp(vals)
+ print sexp(squares)
+ print sexp(sums)
+}'
+:
+(0 1 2 3 4)
+(0 1 4 9 16)
+(0 1 3 6 10)