json
json copied to clipboard
A C++11 library for parsing and serializing JSON to and from a DOM container in memory.
Hi, I have noticed that sometimes serialised `double` numbers differs in the last digit between platform. For instance the same number is printed as follow. on OSX ``` 2.6721272258931175E7 ```...
Currently error_code stores the location of the most inner code that sets the error (the place where the error is first discovered). But there's an argument, that it should instead...
For the type ``` struct X { std::vector a; int b; }; ``` our current solution, if we assume lack of physical dependency on Boost.JSON, is ``` namespace boost {...
As shown in https://github.com/boostorg/json/issues/1125, the natural implementation of `value_from` for simple structs ``` void tag_invoke( boost::json::value_from_tag const&, boost::json::value& jv, X const& x ) { jv = { { "a", boost::json::value_from(...
E.g. ``` struct X { std::vector a; int b; }; ``` Be sure to prominently explain that the natural implementation of `value_from` ``` void tag_invoke( boost::json::value_from_tag const&, boost::json::value& jv, X...
``` boost::system::result< unsigned char > oct1 = try_value_to< unsigned char >( arr[0] ); if( !oct1 ) return make_error_code( std::errc::invalid_argument ); ``` This should be ``` if( !oct1 ) return oct1.error();...
Currently, the conversions for `ip_address` in the documentation are written to only use its public interface; this presumably demonstrates how conversions can be implemented non-intrusively without modifying the original (third-party)...
Currently using Boost 1.83.0 I'm developing a program with boost::json and want to be able to tell if an incoming numeric value is signed or not, and I find the...
Naming `a::b` usually implies "a does b", e.g. `std::vector::push_back` means "vector pushes back". By definition, parser never writes, it only reads data so this method should be named `json::parser::read/consume/etc`. `json::serializer::read`...
I dont see much reasons to have source location on each function as default arguments. Json is a hot path of many apps, performance is critical here, why there are...