std.json dynamic initialization of JSONValue

Nicolas Silva nical.silva at gmail.com
Sun Apr 1 06:58:08 PDT 2012


On Sat, Mar 31, 2012 at 12:25 PM, Piotr Szturmaj <bncrbme at jadamspam.pl> wrote:
> Andrej Mitrovic wrote:
>>
>> On 12/1/11, Kai Meyer<kai at unixlords.com>  wrote:
>>>
>>> I'm finding std.json extremely well written, with one glaring exception.
>>
>>
>> I'm finding it to be crap. The last time I used it I just kept getting
>> access violations (or was that std.xml? They're both crap when I used
>> them.). ae.json beats its pants off for its simplicity + you get
>> toJson/jsonParse for serialization and a way to skip serializing
>> fields since a recent commit . It's easy to write your own
>> tree-walking routines as well.
>>
>> But whatever works for people. :)
>
>
> I have written streaming json parser using ranges. It returns slices when
> possible. Benchmarked it and it's about 2.05x the speed of std.json.
>
> It gives possibility to "dig" into the structure and stream (using ranges)
> by member fields, array elements, or characters of field names and string
> values. It's possible to parse JSON without a single allocation. For
> convenience, one can get objects, arrays and strings as a whole.
>
> I plan to add a streaming json writer and release it (currently it outputs
> json using toString()). I've seen questions on stackoverflow about parsing
> 500 MB JSON... so streaming feature makes it really universal. This approach
> should be good for XML parser too.
>
> Currently, I don't have time to improve it. But if someone is interested I
> can send it as is :-)

I'm very interested in your json lib. I just started writing my own
but you have more advanced stuff already so I'd better build something
on top of your work. Is it on a repository somewhere on the web?


More information about the Digitalmars-d-learn mailing list