You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
Paul J. Davis c0513c1798 Some updates to the README 14 年之前
c_src Improve support for bignums. 14 年之前
src Improve support for bignums. 14 年之前
test Add tests for invalid utf-8 14 年之前
.gitignore Initial import. 14 年之前
Makefile Initial import. 14 年之前
README.md Some updates to the README 14 年之前
rebar Initial import. 14 年之前
rebar.config Initial import. 14 年之前

README.md

Jiffy - JSON NIFs for Erlang

A JSON parser as a NIF. This is a complete rewrite of the work I did in EEP0018 that was based on Yajl. This new version is a hand crafted state machine that does its best to be as quick and efficient as possible while not placing any constraints on the parsed JSON.

Usage

Jiffy's API is a drop in replacement for the EEP0018 application. The JSON representation in Erlang is also exactly the same.

Eshell V5.8.2  (abort with ^G)
1> jiffy:decode(<<"{\"foo\": \"bar\"}">>).
{ok,{[{<<"foo">>,<<"bar">>}]}}
2> Doc = {[{foo, [<<"bing">>, 2.3, true]}]}.
{[{foo,[<<"bing">>,2.3,true]}]}
3> jiffy:encode(Doc).
{ok,<<"{\"foo\":[\"bing\",2.2999999999999998224,true]}">>}

Data Format

JSON             ->   Erlang
null             ->   null
true             ->   true
false            ->   false
1                ->   1
1.25             ->   1.25
[]               ->   []
[true, 1.0]      ->   [true, 1.0]
{}               ->   {[]}
{"foo": "bar"}   ->   {[{<<"foo">>, <<"bar">>}]}