diff options
Diffstat (limited to 'src/lang/lexer.clj')
-rw-r--r-- | src/lang/lexer.clj | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/src/lang/lexer.clj b/src/lang/lexer.clj index 927453aeb..5bd57f7de 100644 --- a/src/lang/lexer.clj +++ b/src/lang/lexer.clj @@ -43,6 +43,12 @@ _ (lex-str "]")] (return [::tuple members]))) +(def ^:private lex-record + (exec [_ (lex-str "{") + members lex-forms + _ (lex-str "}")] + (return [::record members]))) + (def +ident-re+ #"^([a-zA-Z\-\+\_\=!@$%^&*<>\.,/\\\|'][a-zA-Z0-9\-\+\_\=!@$%^&*<>\.,/\\\|']*)") (do-template [<name> <tag> <regex>] @@ -103,6 +109,7 @@ lex-tag lex-list lex-tuple + lex-record lex-single-line-comment lex-multi-line-comment]) _ (try-m lex-white-space)] |