|
Boost : |
Subject: Re: [boost] [CppCMS] What can be contributed to Boost?
From: Bjorn Reese (breese_at_[hidden])
Date: 2018-02-04 17:39:38
On 02/02/18 19:30, Artyom Beilis via Boost wrote:
> Once I can think of is cppcms::json
>
> http://cppcms.com/wikipp/en/page/cppcms_1x_json
> http://cppcms.com/cppcms_ref/latest/classcppcms_1_1json_1_1value.html
>
> Also it should be updated to C++11 and probably do some small features
> updates. it is one of the fastest JSON parsers around (and yes it is
> way faster and convenient than one in property tree)
>
> What do you think?
If the Boost community wants a JSON library, then I would like to
suggest another, more versatile ibrary:
https://github.com/breese/trial.protocol
Documentation can be found here:
http://breese.github.io/trial/protocol/
This library consists of two (well, three) parts:
1. A dynamic variable which is a variant type that can contain
fundamental types, arrays, and associative arrays. This can be
used as a parse tree for JSON and similar binary formats like
MsgPack, UBJSON, BinToken, and CBOR. But it can also be used
as a data container for, say, configuration data. The dynamic
variable has iterators so it works with std algorithms. It also
comes with a visitor.
2. A JSON parser/generator framework. This contains an incremental
pull parser (json::reader) as the basic building-block. The
incremental parser is used by a Boost.Serialization archive to
enable serialization directly between JSON and C++ data structures.
The incremental parser is also used by a tree parser that converts
JSON into the before-mentioned dynamic variable.
3. A BinToken parser/generator framework. Like the JSON framework, but
for the binary BinToken format. Currently undocumented.
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk