Commit graph

308 commits

Author SHA1 Message Date
alisdair sullivan
7a56f72b7c formatter works, kind of. only minifies currently 2011-10-24 22:51:39 -07:00
alisdair sullivan
200fb231a9 fresh api. virtually whole new thing, entirely new interface and heavily modified encoder/decoder 2011-10-21 18:16:16 -07:00
alisdair sullivan
9c5710b97c reorg of opts parsing, some minor source cleanups 2011-10-19 06:51:36 -07:00
alisdair sullivan
59a983bbe9 remove license replication from include files, move json_escape/2 to jsx_utils 2011-09-14 06:44:52 -07:00
alisdair sullivan
9e8361e10a incremental test, fixed revealed bug in incomlete implementation 2011-08-31 19:35:09 -07:00
alisdair sullivan
7e88a14525 massive simplification of api, operation and internals. removes all demo modules temporarily 2011-08-31 18:52:01 -07:00
alisdair sullivan
7fbb29369b utf8 is the default encoding for decoder, no need to explicitly define it 2011-08-25 06:39:33 -07:00
alisdair sullivan
affdd3cc62 minor fixups to spec/api 2011-08-19 20:13:49 -07:00
alisdair sullivan
6c3aee2835 further testing of repeated key behavior 2011-08-18 06:32:50 -07:00
alisdair sullivan
e0a47225d8 Merge branch 'develop' 2011-08-17 19:34:21 -07:00
alisdair sullivan
68ff87748c repeated keys ignored by default in jsx:json_to_term/1,2. option to ensure 'last key wins' behaviour 2011-08-17 19:33:59 -07:00
alisdair sullivan
6234e4a986 moves headers back to include dir so include_lib works. except jsx_format.hrl, because jsx_format needs a full rewrite 2011-08-16 22:45:32 -07:00
alisdair sullivan
6d6d61a817 structural work for secret project X, no behavioural or api changes 2011-08-16 21:27:05 -07:00
alisdair sullivan
5cf8173bd5 tests for jsx_encoder string escapes 2011-08-15 19:35:56 -07:00
alisdair sullivan
d33474d29d unifies returns of encoder and decoder 2011-08-15 17:26:11 -07:00
alisdair sullivan
48ada362e9 (broken) test to check equivalency of encoder/decoder apis. more cases needed 2011-08-13 07:22:46 -07:00
alisdair sullivan
6357eb74c1 return {incomplete, ...} rather than error on incomplete input to json_to_term 2011-08-12 06:37:07 -07:00
alisdair sullivan
588c836547 minor change to guards on the fun returned when incomplete input detected 2011-08-12 06:36:13 -07:00
alisdair sullivan
9bf7554a35 remove wrong comment in jsx_common.hrl 2011-08-11 17:07:04 -07:00
alisdair sullivan
31614927e2 inline accumulation of events, ~30% speedup 2011-08-11 16:55:52 -07:00
alisdair sullivan
7b0cf9c724 jsx_terms decoder now uses new api 2011-08-11 00:23:46 -07:00
alisdair sullivan
01a8154ac4 remove stream mode from jsx_terms and streamline options handling in jsx_terms to simplify migration to new api 2011-08-10 23:38:56 -07:00
alisdair sullivan
3186223fd1 better guarding of opts parsing 2011-08-10 23:18:42 -07:00
alisdair sullivan
c56cf7c00b remove jsx_verify.hrl, move opts record to main body 2011-08-10 22:57:53 -07:00
alisdair sullivan
0624321347 removes catch blocks from jsx_verify, allow errors to propogate 2011-08-10 22:48:55 -07:00
alisdair sullivan
5db827f6ed whitespace 2011-08-10 22:46:50 -07:00
alisdair sullivan
d64644e01f whitespace 2011-08-10 22:45:00 -07:00
alisdair sullivan
a2c7cf3977 new test for repeated nested keys 2011-08-10 21:59:27 -07:00
alisdair sullivan
bb80bf2b83 is_json rewritten to use new api 2011-08-10 21:55:58 -07:00
alisdair sullivan
39605da171 add collect function to jsx_utils for later use 2011-08-10 01:44:38 -07:00
alisdair sullivan
59bde85780 unexported pow/2 from jsx_utils, can't remember why i did that 2011-08-10 01:33:43 -07:00
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
ba057d13cc encoder exported correctly 2011-08-10 00:33:52 -07:00
alisdair sullivan
0c3cf2b87b encoder updated to use same api as decoder, format and verify updated to be aware of new api 2011-08-10 00:33:14 -07:00
alisdair sullivan
3485ca5413 whitespace 2011-08-09 21:04:27 -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