2014-03-22 15:46:58 -07:00
|
|
|
==========================================
|
2014-03-20 18:15:38 -07:00
|
|
|
recovers from top-level errors
|
2014-03-22 15:46:58 -07:00
|
|
|
==========================================
|
2014-03-20 18:15:38 -07:00
|
|
|
[}
|
|
|
|
|
---
|
2014-08-27 18:41:48 -07:00
|
|
|
(ERROR '}')
|
2014-03-20 18:15:38 -07:00
|
|
|
|
2014-03-22 15:46:58 -07:00
|
|
|
==========================================
|
|
|
|
|
recovers from unexpected tokens
|
|
|
|
|
==========================================
|
|
|
|
|
barf
|
|
|
|
|
---
|
2014-05-26 21:50:01 -07:00
|
|
|
(ERROR 'b')
|
2014-03-22 15:46:58 -07:00
|
|
|
|
|
|
|
|
==========================================
|
2014-03-20 18:15:38 -07:00
|
|
|
recovers from errors inside arrays
|
2014-03-22 15:46:58 -07:00
|
|
|
==========================================
|
2014-03-22 15:59:21 -07:00
|
|
|
[1, , 2]
|
2014-03-20 18:15:38 -07:00
|
|
|
---
|
2014-07-16 18:38:06 -07:00
|
|
|
(array
|
2014-03-26 00:10:59 -07:00
|
|
|
(number)
|
2014-08-25 23:35:00 -07:00
|
|
|
(ERROR ',')
|
2014-07-16 18:38:06 -07:00
|
|
|
(number))
|
2014-03-20 18:15:38 -07:00
|
|
|
|
2014-03-22 15:46:58 -07:00
|
|
|
==========================================
|
2014-03-20 18:15:38 -07:00
|
|
|
recovers from errors inside objects
|
2014-03-22 15:46:58 -07:00
|
|
|
==========================================
|
2014-03-22 15:59:21 -07:00
|
|
|
{ "key1": 1, oops }
|
2014-03-20 18:15:38 -07:00
|
|
|
---
|
2014-07-16 18:38:06 -07:00
|
|
|
(object (string) (number) (ERROR 'o'))
|
2014-03-20 18:15:38 -07:00
|
|
|
|
|
|
|
|
==========================================
|
|
|
|
|
recovers from errors inside nested objects
|
|
|
|
|
==========================================
|
|
|
|
|
{ "key1": { "key2": 1, 2 }, [, "key3": 3 }
|
|
|
|
|
---
|
2014-07-16 18:38:06 -07:00
|
|
|
(object
|
2014-05-26 21:50:01 -07:00
|
|
|
(string) (object (string) (number) (ERROR '2'))
|
|
|
|
|
(ERROR '[')
|
2014-09-02 07:41:29 -07:00
|
|
|
(string) (number))
|