aboutsummaryrefslogtreecommitdiff
path: root/core.nom
diff options
context:
space:
mode:
authorBruce Hill <bitbucket@bruce-hill.com>2017-09-14 04:16:22 -0700
committerBruce Hill <bitbucket@bruce-hill.com>2017-09-14 04:16:22 -0700
commit7c02fe05646c7d2e3b268375cf014ff27db1af22 (patch)
tree485f97c709d765811851607914b1f1e38b29e90f /core.nom
parent39a92bd1ab75588a2951154208ed7ccd1b22865e (diff)
Added dict to core lib.
Diffstat (limited to 'core.nom')
-rw-r--r--core.nom11
1 files changed, 11 insertions, 0 deletions
diff --git a/core.nom b/core.nom
index 810859c..110fd18 100644
--- a/core.nom
+++ b/core.nom
@@ -279,4 +279,15 @@ macro block "test %code yields %expected":
error!
return ""
+rule "dict %items":
+ let "dict" = []
+ for "pair" in %items:
+ lua block "vars.dict[vars.pair[1]] = vars.pair[2]"
+ return %dict
+
+rule "%dict -> %key":
+ lua expr "vars.dict[vars.key]"
+
+rule "%dict -> %key = %value":
+ lua block "vars.dict[vars.key] = vars.value"