summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBruno Cichon <ebrasca.ebrasca@openmailbox.org>2017-06-18 00:20:12 +0200
committerBruno Cichon <ebrasca.ebrasca@openmailbox.org>2017-06-18 00:20:12 +0200
commit02a60cb355bdc7c69092e63188dbab5f0289c73f (patch)
tree1c3294249ece70400dacbc1c485bacc2a8370cd3
parent748ea5971487327558aad4f21ba82a2dd0f3ba4f (diff)
Add unset-rule.HEADmaster
-rw-r--r--src/l-system.lisp5
-rw-r--r--src/package.lisp1
2 files changed, 6 insertions, 0 deletions
diff --git a/src/l-system.lisp b/src/l-system.lisp
index 2f39259..01e2a1d 100644
--- a/src/l-system.lisp
+++ b/src/l-system.lisp
@@ -42,3 +42,8 @@ It can expand to parametric grammar or to context sensitive grammar."
#'(lambda ,(append vars '(&rest rest))
(declare (ignorable rest))
,@body)))
+
+(defun unset-rule (symbol)
+ "Unset rules from grammar."
+ (setf (gethash symbol *l-system-clauses*)
+ nil))
diff --git a/src/package.lisp b/src/package.lisp
index c2c3fb4..7b7dbfe 100644
--- a/src/package.lisp
+++ b/src/package.lisp
@@ -4,5 +4,6 @@
(:use #:cl #:iter)
(:export #:l-system
#:->
+ #:unset-rule
#:parametric-grammar
#:context-sensitive-grammar))