1
0
mirror of https://github.com/janet-lang/janet synced 2025-12-08 01:28:06 +00:00

Minor fixes for parser

Check length before dereferencing buffer in tokenchar.
Check keywords are valid utf-8.
Fix minor typos.
This commit is contained in:
Andrew Chambers
2019-11-23 16:55:23 +13:00
parent 8372d1e499
commit 976dfc7195
2 changed files with 19 additions and 6 deletions

View File

@@ -118,6 +118,16 @@
(assert (deep= (parser/status p) (parser/status p2)) "parser 2")
(assert (deep= (parser/state p) (parser/state p2)) "parser 3")
# Parser errors
(defn parse-error [input]
(def p (parser/new))
(parser/consume p input)
(parser/error p))
# Invalid utf-8 sequences
(assert (not= nil (parse-error @"\xc3\x28")) "reject invalid utf-8 symbol")
(assert (not= nil (parse-error @":\xc3\x28")) "reject invalid utf-8 keyword")
# String check-set
(assert (string/check-set "abc" "a") "string/check-set 1")
(assert (not (string/check-set "abc" "z")) "string/check-set 2")