Commit graph

38 commits

Author SHA1 Message Date
alisdair sullivan
4a078bd44a move opts handling to jsx.erl for earlier failure on badopts 2011-08-10 01:28:25 -07:00
alisdair sullivan
aca326b42e multi_term mode removed until sane interface can be developed 2011-08-10 00:35:51 -07:00
alisdair sullivan
ea764162c0 moves opts and parse_opts to external header 2011-08-09 21:02:01 -07:00
alisdair sullivan
8bb0f66470 unless iterate option is specified, jsx now buffers events internally before returning 2011-08-09 17:49:42 -07:00
alisdair sullivan
986b60af37 groundwork for eventual inline ops 2011-08-09 16:02:14 -07:00
alisdair sullivan
776ee8a8a2 two new tests for bad low pairs of json surrogate pairs 2011-08-03 00:45:49 -07:00
alisdair sullivan
5cd967b26d discovered and fixed a couple more broken tests 2011-08-03 00:15:18 -07:00
alisdair sullivan
12eb6c6c08 adds emit function and incomplete macro and makes whitespace changes to reduce linecount of jsx_decoder.hrl by 280 lines 2011-08-02 20:06:49 -07:00
alisdair sullivan
b3eb058463 revert change from strings/keys being presented as binaries to being presented as lists of characters. ~30% speedup 2011-07-31 19:05:30 -07:00
alisdair sullivan
20f9e0368d tests could fail silently when file:consult failed, fixed 2011-07-31 18:43:14 -07:00
alisdair sullivan
e90c5461e8 cleanup of comments, some of which were no longer strictly true 2011-07-31 00:12:47 -07:00
alisdair sullivan
03381567d2 whitespace 2011-07-31 00:05:34 -07:00
alisdair sullivan
ecdd34fa37 building strings as lists of codepoints, then converting them to binaries is faster than building binaries directly, or slicing segments out of binaries in the case of utf8. by more than 25% 2011-07-30 23:52:29 -07:00
alisdair sullivan
5f3885c594 escape_forward_slash option to allow optional escaping of forward slashes during encoding. for compatibility with microsoft json date format 2011-07-29 00:18:33 -07:00
alisdair sullivan
b73ca00892 alters behaviour for escaped noncharacters in extended plane with loose_unicode enabled, now replaced by single u+fffd, not two 2011-07-28 21:21:08 -07:00
alisdair sullivan
16c29a0070 surrogates that encode noncharacters now are replaced by a single u+fffd rather than two 2011-07-28 21:15:21 -07:00
alisdair sullivan
100f707899 streamlined options 2011-07-28 19:21:19 -07:00
alisdair sullivan
cd4f4a8f1c test every codepoint possible for replacement/badness 2011-07-28 18:47:58 -07:00
alisdair sullivan
80e9381b42 proper guarding and handling of noncharacters in json strings. more tests required 2011-07-27 06:52:16 -07:00
alisdair sullivan
653205501c adds loose_unicode option which replaces badly formed unicode (escaped non-characters and restricted codepoints, as well as partial surrogates) with u+fffd instead of throwing an error 2011-07-27 01:59:03 -07:00
alisdair sullivan
2720b2e0fb noncharacter tests 2011-07-26 19:46:31 -07:00
alisdair sullivan
c5c98482fc test for noncharacters, fixed bug discovered by test 2011-07-26 19:28:41 -07:00
alisdair sullivan
4ba8c4d57e stricter rejection of unicode non-characters 2011-07-26 13:46:24 -07:00
alisdair sullivan
6d0d2cfb8c removed wayward io:format 2011-07-26 13:34:48 -07:00
alisdair sullivan
0507dc38dc error upon encountering escaped u+0000 to prevent malicious json 2011-07-26 13:34:15 -07:00
alisdair sullivan
68d78c8e25 new api: strings and keys returned as binaries, integers as integers, floats as floats, tuple format changed from {event, ..., ...} to {jsx, ..., ...}, tests updated 2011-07-26 00:35:17 -07:00
alisdair sullivan
66f5e0b48a adds {escaped_unicode, replace} option that replaces illegal escape sequences with the unicode replacement character u+fffd when encountered 2011-07-22 23:47:35 -07:00
alisdair sullivan
668b43b7e6 smarter emitting of ints/floats 2011-07-22 21:36:13 -07:00
alisdair sullivan
3bf5506292 unifies options to encoder/decoder to allow abstraction over various different built in iterators 2011-07-21 06:14:48 -07:00
alisdair sullivan
746d8e469c renames jsx_opts to jsx_decoder_opts 2011-07-17 20:55:54 -07:00
alisdair sullivan
e20e6746a2 removes all traces of unquoted key and comment support 2011-07-03 17:42:44 -07:00
alisdair sullivan
26e479fc84 removes include dir, headers now live in src 2011-05-03 15:22:44 -07:00
alisdair sullivan
a83a0a4ebc reworked build system to use rebar, tests still use external script, moved jsx_decoder.erl template to /priv from /src 2010-07-26 18:04:23 -07:00
alisdair sullivan
11e0adc05e opts now uses a record definition, rather than a handwritten tuple 2010-06-26 07:27:38 -07:00
alisdair sullivan
46df6e5a38 incomplete work on multi term streams 2010-06-23 16:43:09 -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
eb55eb9599 all five utfx variants supported now compiled from a single templated module 2010-06-07 16:15:40 -07:00
Renamed from src/jsx_common.hrl (Browse further)