Commit Graph
34 Commits
Author SHA1 Message Date
Eric Fischer ad2843d65b Be consistent about EOF handling around whitespace 2014-02-06 12:31:12 -08:00
Eric Fischer f76bcab825 Detect misplaced comma within hash 2014-02-06 12:25:59 -08:00
Eric Fischer 948584126a Detect trailing commas and colons inside arrays and hashes. 2014-02-06 12:19:33 -08:00
Eric Fischer 42283ece0b More sensible way of passing errors back to caller 2014-02-06 12:13:23 -08:00
Eric Fischer f8465828e5 Maybe the right way to handle empty arrays?
The previous check for the array length being 0 didn't work
for the case of an array that contains only an empty array.

The tricky part is that the current node is the array when
the array has just begun or just after a comma, but also
when the completed array has been passed off to the caller.
2014-02-06 00:30:25 -08:00
Eric Fischer 68e0784cc3 At least don't talk about allocation sizes in the public API 2014-02-05 23:35:35 -08:00
Eric Fischer d630aa917e Put arrays in order by getting rid of the linked lists.
Resizing is ugly, but less ugly than backwards arrays.
2014-02-05 23:18:27 -08:00
Eric Fischer 879f9126b3 Name the types in the order the JSON spec names them in 2014-02-05 22:40:35 -08:00
Eric Fischer c69e595e4e Do escaping in output strings 2014-02-05 22:34:47 -08:00
Eric Fischer 9299ef2ecb Handle empty arrays and hashes. Detect non-string hash keys. 2014-02-05 22:13:03 -08:00
Eric Fischer 71981fc49e Add Makefile 2014-02-05 22:04:58 -08:00
Eric Fischer 7641459278 Handle named files, not just standard input 2014-02-05 22:00:52 -08:00
Eric Fischer 264abd48de Fix crash with comma or colon at the top level. 2014-02-05 21:52:39 -08:00
Eric Fischer e7184989ec Handle \u escapes in strings 2014-02-05 21:42:49 -08:00
Eric Fischer 4506a85e6b Add comments 2014-02-05 21:34:17 -08:00
Eric Fischer 95410dbf33 Fix logic error that broke top-level hashes 2014-02-05 21:29:40 -08:00
Eric Fischer 7983c66add Separate source and header files 2014-02-05 21:27:48 -08:00
Eric Fischer 281b98e3d8 Guard against hash keys with no values 2014-02-05 18:34:02 -08:00
Eric Fischer 45e37eb66a Hash getter to extract all Features 2014-02-05 18:23:49 -08:00
Eric Fischer 8aec0ed9d2 Break up the wall of text a little 2014-02-05 18:03:12 -08:00
Eric Fischer e195aa54c3 Much more reasonable pretty-printing (but still reversed) 2014-02-05 17:59:04 -08:00
Eric Fischer 285f1bf8e6 Fix number parsing bug and hash initialization bug 2014-02-05 17:38:02 -08:00
Eric Fischer 3e049754d1 Fix null dereferences 2014-02-05 17:28:45 -08:00
Eric Fischer 558c47c498 Slightly better debug output 2014-02-05 17:21:19 -08:00
Eric Fischer 3e9bb4567e Test code 2014-02-05 16:51:28 -08:00
Eric Fischer 80408353c8 Add strings 2014-02-05 16:45:20 -08:00
Eric Fischer b0103ea458 Growing string instead of static buffer 2014-02-05 16:39:50 -08:00
Eric Fischer 2a7fa98a3a Add numbers (and a buffer overflow risk to fix) 2014-02-05 16:23:01 -08:00
Eric Fischer 7865a9757e Attach child objects to the containers 2014-02-05 16:10:22 -08:00
Eric Fischer 50f30c3dd0 Comma and colon 2014-02-05 16:00:01 -08:00
Eric Fischer f895b8f6b7 Correct value for false 2014-02-05 15:49:53 -08:00
Eric Fischer c913f0eec1 Add null, true, false 2014-02-05 15:42:15 -08:00
Eric Fischer 32cf645516 Arrays and hashes 2014-02-05 15:33:43 -08:00
Eric Fischer c3cda93a77 Basic data types 2014-02-05 15:16:23 -08:00