Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- grammar JSON {
- token TOP { ^ <object> $ }
- rule object { '{' <pairlist> { {} } '}' { {} } }
- rule pairlist { <pair> { {} } [',' <pair> { {} }]* }
- rule pair { <string> { {~$/[0]} => $<value>.made } ':' <value> { {} } }
- rule array { '[' <valuelist> { [] } ']' { [] } }
- rule valuelist { <value> { [~] $/.list } [',' <value> { [~] $/.list }]* }
- rule value { <string> {~$<string>} | <number> {+$/} | <object> {$<object>} | <array> {$<array>} | 'true' {True} | 'false' {False} | 'null' {Any} }
- token string { '"' <strcontent>* '"' { make ~$/ } }
- token strcontent { \\ <strchar> | <!before '"' > . }
- token strchar { <-[\\\"\n]> }
- token number { '-'? \d+ [ '.' \d+ ]? [ <[eE]> [ <[+\-]>? \d+ ] ]? }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement