Commit graph

55 commits

Author SHA1 Message Date
alisdair sullivan
11e0adc05e opts now uses a record definition, rather than a handwritten tuple 2010-06-26 07:27:38 -07:00
alisdair sullivan
0a96a059a1 added test for multi_terms 2010-06-24 15:55:08 -07:00
alisdair sullivan
1320241e68 Merge branch 'master' into multiple_terms 2010-06-23 23:38:06 -07:00
alisdair sullivan
c5c0aca251 removed mid level api completely 2010-06-23 23:37:48 -07:00
alisdair sullivan
79361c418f formatting 2010-06-23 23:36:34 -07:00
alisdair sullivan
46df6e5a38 incomplete work on multi term streams 2010-06-23 16:43:09 -07:00
alisdair sullivan
37f9d2a07a brought test suite up to date, fixed a dumb error that occured when parsing integers larger than 100 2010-06-21 23:06:55 -07:00
alisdair sullivan
5309030233 repaired jsx:fold and moved some defines to jsx_decoder.hrl 2010-06-20 18:11:06 -07:00
alisdair sullivan
cff4d17561 substantial refactoring of api and decoder internals 2010-06-20 17:00:08 -07:00
alisdair sullivan
4286892861 new interruptable api, examples broken for the hojillionth time 2010-06-11 21:57:42 -07:00
alisdair sullivan
e690d7723a first pass at new api 2010-06-11 18:14:24 -07:00
alisdair sullivan
813058e2fb changed end_of_json to end_json 2010-06-10 20:32:15 -07:00
alisdair sullivan
e245d8aa92 tightened up options allowed 2010-06-09 06:21:03 -07:00
alisdair sullivan
f042908c30 reworked api, renamed decoder to parser, added types and function specs for exported functions 2010-06-09 00:57:15 -07:00
alisdair sullivan
0d7a6f9720 fixed embarassing non-termination bug 2010-06-08 20:21:18 -07:00
alisdair sullivan
d25f96f798 merged in unified decoder branch 2010-06-07 16:21:22 -07:00
alisdair sullivan
5460796e33 changed end of stream token 2010-06-07 16:10:29 -07:00
alisdair sullivan
fb497a20bc added a streaming mode, use option [{stream_mode, true}] to use. no tests yet 2010-06-06 13:58:04 -07:00
alisdair sullivan
152c2ec75f added decode function to jsx.erl 2010-06-05 07:49:55 -07:00
alisdair sullivan
fbbfc3bebb changed error reporting for utf8 decoder, utf16 and utf32 variants currently throwing untrapped errors 2010-06-02 23:42:05 -07:00
alisdair sullivan
ad0b87aa37 readme updated 2010-06-02 23:02:45 -07:00
alisdair sullivan
3453c5ab2e reexported detect_encoding from jsx.erl, remembered why it was exported 2010-06-02 21:54:25 -07:00
alisdair sullivan
0de4a87325 unexported detect_encoding from jsx.erl 2010-06-02 21:52:41 -07:00
alisdair sullivan
ef952ceee8 converted jsx_test to etap, fixed resulting bugs with autodetection 2010-06-01 23:33:56 -07:00
alisdair sullivan
ce503823c8 fixed bug related to partial utfx sequences 2010-06-01 19:42:43 -07:00
alisdair sullivan
a7ed14b741 utf8, both varieties of utf16 and both varieties of utf32 are now autodetected properly (either via bom or null order) and decoded properly 2010-06-01 01:28:42 -07:00
alisdair sullivan
af3d9673a1 changed comments_true to comments_enabled, again 2010-05-31 21:03:04 -07:00
alisdair sullivan
46d859c6d0 restrict escaped codepoint conversion from inserting invalid codepoints into strings 2010-05-31 21:03:04 -07:00
alisdair sullivan
2cf20cf809 formatting 2010-05-31 21:03:04 -07:00
alisdair sullivan
c7ea7a6f08 fixed parsing error related to interrupted utf-8 seqences 2010-05-31 21:03:04 -07:00
alisdair sullivan
2bc885f3c4 correctly catch and convert badjson errors 2010-05-31 21:03:04 -07:00
alisdair sullivan
ac518dfe4a decoder now catches function clause errors and converts them to {error, badjson} tuples 2010-05-31 21:03:04 -07:00
alisdair sullivan
c29f60ea34 changed end of tokenizing marker 2010-05-31 21:03:04 -07:00
alisdair sullivan
eadb7acbdd change in design philosophy, core decoder and interface now a single file 2010-05-31 21:02:58 -07:00
alisdair sullivan
2a2275136a Removed all records from the core decoder. Replaced with macros and a raw tuple containing options. Updated one test to account for changed api. 2010-05-31 21:00:20 -07:00
alisdair sullivan
6d90c49be3 punt validity of naked values to user level, they are now always valid in decoding 2010-05-31 21:00:20 -07:00
alisdair sullivan
6e16ce0943 allow unknown options temporarily
fixed warning
2010-05-31 21:00:17 -07:00
alisdair sullivan
7e6124fc88 explicit termination is no longer an option. the decoder now terminates whenever it reaches the end of an unambiguous json term and returns a function that accepts either more input to continue decoding or the empty binary to force termination.
examples are currently broken, but the test suite has been updated to reflect the new api.
2010-05-31 21:00:16 -07:00
alisdair sullivan
6deb3160ba changed end of parsing token from eof to completed_parse 2010-05-31 21:00:16 -07:00
alisdair sullivan
1c5f54574c reduced redundancy in callback handling, also renamed callback function to the more clear fold 2010-05-31 21:00:16 -07:00
alisdair sullivan
7d5ccfd86f removed the default callback handler, replaced it with an anonymous function. also added a shortcut for a decoder with the default handler but custom opts 2010-05-31 21:00:16 -07:00
alisdair sullivan
86333b8e7f did you know the module definition must be the first non-whitespace, non-comment line in a module? i did not 2010-05-31 21:00:16 -07:00
alisdair sullivan
feaef7380c changed api of jsx_parser 2010-05-31 21:00:06 -07:00
alisdair sullivan
8e05d0c1a6 added license/copywrite to all code 2010-05-31 21:00:06 -07:00
alisdair sullivan
41292d4077 comments on tail_clean 2010-05-31 21:00:06 -07:00
alisdair sullivan
e9ddde9fb7 removed redundant initialization function, pushed to api level 2010-05-31 21:00:06 -07:00
alisdair sullivan
5d014bbef8 minor api change and refactoring of pretty_printer.erl 2010-05-31 21:00:05 -07:00
alisdair sullivan
d42acf4411 fixed a nasty performance regression caused by a misordered clause 2010-05-31 21:00:05 -07:00
alisdair sullivan
6515f9981d added option for explicit termination requirement when parsing streams 2010-05-31 21:00:05 -07:00
alisdair sullivan
89f26ed1c9 autodetection actually works now 2010-05-31 21:00:04 -07:00