aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBruce Hill <bitbucket@bruce-hill.com>2017-11-01 19:59:44 -0700
committerBruce Hill <bitbucket@bruce-hill.com>2017-11-01 19:59:44 -0700
commit87b2cce8e5b327d65b473a234efefaaf61436b46 (patch)
tree55c212b719ec80e48a5eb862c72e5153301bfc3e
parentfb3936269f11a51e5187ae5056a7faf521e99d58 (diff)
Added remove rule rule.
-rw-r--r--lib/metaprogramming.nom7
1 files changed, 7 insertions, 0 deletions
diff --git a/lib/metaprogramming.nom b/lib/metaprogramming.nom
index ac45574..fe1d50a 100644
--- a/lib/metaprogramming.nom
+++ b/lib/metaprogramming.nom
@@ -53,6 +53,13 @@ rule [escaped compile %macro_def to code %body] =:
parse [compile %macro_def to %body] as: escaped compile \%macro_def to \%body
parse [compile %macro_def to code %body] as: escaped compile \%macro_def to code \%body
+rule [remove rule %stub] =:
+ lua> ".."
+ |local def = nomsu.defs[stub];
+ |for _, alias in ipairs(def.aliases) do
+ | nomsu.defs[alias] = nil;
+ |end
+
rule [do %] =:
=lua "\(%)(nomsu, vars)"