40 lines
No EOL
965 B
Text
40 lines
No EOL
965 B
Text
==========================================
|
|
recovers from top-level errors
|
|
==========================================
|
|
[}
|
|
---
|
|
(ERROR)
|
|
|
|
==========================================
|
|
recovers from unexpected tokens
|
|
==========================================
|
|
barf
|
|
---
|
|
(ERROR)
|
|
|
|
==========================================
|
|
recovers from errors inside arrays
|
|
==========================================
|
|
[1,,2]
|
|
---
|
|
(value (array
|
|
(value (number))
|
|
(ERROR)
|
|
(value (number))))
|
|
|
|
==========================================
|
|
recovers from errors inside objects
|
|
==========================================
|
|
{ "key1": 1, 5 }
|
|
---
|
|
(value (object (string) (value (number)) (ERROR)))
|
|
|
|
==========================================
|
|
recovers from errors inside nested objects
|
|
==========================================
|
|
{ "key1": { "key2": 1, 2 }, [, "key3": 3 }
|
|
---
|
|
(value (object
|
|
(string) (value (object (string) (value (number)) (ERROR)))
|
|
(ERROR)
|
|
(string) (value (number)))) |