19 lines
578 B
Plaintext
19 lines
578 B
Plaintext
# JSON lang definition file
|
|
|
|
# for string types
|
|
(keyquote,key,keyquote,colon,valquote,string,valquote) = `(")([^"]+)(")(\s*:)(\s*")((?:\\"|.)*?)(")`
|
|
|
|
# for string primitives
|
|
(valquote,string,valquote) = `(^")((?:\\"|.)*?)("$)`
|
|
|
|
# for non-string types and string values (array of strings)
|
|
(keyquote,key,keyquote,colon) = `(")([^"]+)(")(\s*:?\s*)`
|
|
|
|
# duplicated from number.lang - can just include
|
|
number =
|
|
'\<[+-]?((0x[[:xdigit:]]+)|(([[:digit:]]*\.)?
|
|
[[:digit:]]+([eE][+-]?[[:digit:]]+)?))u?((int(?:8|16|32|64))|L)?\>'
|
|
|
|
symbol = ",","{","}","[","]"
|
|
keyword = "true|false|null"
|