diff options
Diffstat (limited to 'argot.lisp')
-rw-r--r-- | argot.lisp | 10 |
1 files changed, 5 insertions, 5 deletions
@@ -72,23 +72,23 @@ and it returns VAR in that case." (defun parse-rule-def (ruledef) (handler-case (ematch ruledef - ((guard (list lhs :-> pattern) + ((guard (list lhs :match pattern) (and (nonterminal? lhs) (pattern? pattern))) (list lhs pattern (collect-vars pattern) nil nil)) - ((guard (list lhs :-> pattern :if check) + ((guard (list lhs :match pattern :if check) (and (nonterminal? lhs) (pattern? pattern))) (list lhs pattern (collect-vars pattern) check nil)) - ((guard (list lhs :-> pattern :then action) + ((guard (list lhs :match pattern :then action) (and (nonterminal? lhs) (pattern? pattern))) (list lhs pattern (collect-vars pattern) nil action)) - ((guard (list lhs :-> pattern :then action :if check) + ((guard (list lhs :match pattern :then action :if check) (and (nonterminal? lhs) (pattern? pattern))) (list lhs pattern (collect-vars pattern) check action)) - ((guard (list lhs :-> pattern :if check :then action) + ((guard (list lhs :match pattern :if check :then action) (and (nonterminal? lhs) (pattern? pattern))) (list lhs pattern (collect-vars pattern) check action))) (trivia::match-error () |