|
Boost : |
From: Vinnie Falco (vinnie.falco_at_[hidden])
Date: 2020-09-15 23:23:22
On Tue, Sep 15, 2020 at 4:00 PM Andrzej Krzemienski <akrzemi1_at_[hidden]> wrote:
> This is just my way of trying to determine the scope of this library.
> I would appreciate it if you said something similar in the docs in
> some "design decisions" section.
>
> That high-level contract -- as I understand it -- is:
> 1. Any json::value that you can build can be serialized and then deserialized, and you are guaranteed that the resulting json::value will be equal to the original.
> 2. JSON inputs where number values cannot be represented losslessly in uint64_t, int64_t and double, may render different values when parsed and then serialized back, and for extremely big number values can even fail to parse.
> 3. Whatever JSON output you can produce with this library, we guarantee it can be passed by any common JSON implementation (probably also based on uint64_t+int64_t+double implementation.
Yes this sounds about right and I agree the docs should make this clear.
Thanks
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk