2
0
mirror of https://github.com/boostorg/json.git synced 2026-02-01 08:32:13 +00:00
Commit Graph

554 Commits

Author SHA1 Message Date
Dmitry Arkhipov
56eaebf1cb add source_location to error_codes 2022-02-18 14:31:47 +03:00
Dmitry Arkhipov
a9d97815dd Circumvent msvc-14.2 bug 2022-02-07 09:46:47 +03:00
Dmitry Arkhipov
6fc14477bb Switch to core::string_view 2022-02-06 17:35:09 +03:00
Dmitry Arkhipov
1523954c98 Add std::error_code overloads 2022-02-06 17:35:09 +03:00
Dmitry Arkhipov
d3b872beaa Remove duplicated Boost.System aliases 2022-02-06 17:35:09 +03:00
Dmitry Arkhipov
dfae47afb3 Remove index_sequence alias 2022-02-06 17:35:09 +03:00
Dmitry Arkhipov
d20a814685 Remove standalone 2022-02-06 17:35:09 +03:00
Dmitry Arkhipov
21fcc88030 Remove unnecessary message on msvc 2022-01-16 21:00:59 +03:00
Dima Rusyy
bb81c7b3bb Issue #665 : remove unused value_ref::is_builtin 2022-01-16 20:18:20 +03:00
Dmitry Arkhipov
54cb345557 Naturally grow string in serialize_impl
Fix #668
2022-01-16 20:14:52 +03:00
Dmitry Arkhipov
bd9891f73f Suppress msvc warnings 2022-01-16 18:06:50 +03:00
Dmitry Arkhipov
31dd295232 Allow external libraries to forward declare value_to/from 2021-10-20 22:35:21 +03:00
Dmitry Arkhipov
9e422287fa Deprecate standalone 2021-10-20 22:34:27 +03:00
Peter Dimov
d085e86cf8 Add noexcept to destructors to support /Zc:implicitNoexcept-. Fixes #557. 2021-10-08 03:19:29 +03:00
Dmitry Arkhipov
c5edf02055 Fix typos in array::erase docs 2021-10-03 17:15:26 +03:00
Dmitry Arkhipov
5b45854bb0 Fix signed integer overflow in exponent parsing 2021-08-20 11:54:38 +03:00
Paul Dreik
3f48a27458 Fix signed integer overflow
Also add fuzzing testcase found by oss-fuzz
2021-08-17 22:16:49 +03:00
Dmitry Arkhipov
445efad9a9 Remove trailing whitespace 2021-06-26 16:17:57 +03:00
Dmitry Arkhipov
138244b363 Remove unnecessary semicolons 2021-06-26 16:06:06 +03:00
Dmitry Arkhipov
351603c9b2 value_to supports std::array 2021-05-23 22:49:02 +03:00
Dmitry Arkhipov
562c9f5e7e value_from supports std::array 2021-05-23 09:58:11 +03:00
Dmitry Arkhipov
e62a95d637 Remove trailing whitespace 2021-05-22 21:20:45 +03:00
Dmitry Arkhipov
b040917ced key_value_pair allocates with the correct alignment 2021-05-22 21:20:45 +03:00
Dmitry Arkhipov
6e69ed376b Remove ryu::d2s_buffered 2021-05-22 21:19:19 +03:00
Dmitry Arkhipov
dffb248677 Remove ryu::d2s 2021-05-22 21:19:19 +03:00
Dmitry Arkhipov
a46690714c Fix array constructor from iterators 2021-05-08 15:29:19 +03:00
Dmitry Arkhipov
2ebbd0cfe3 to_number overload takes error 2021-05-08 01:01:45 +03:00
Dogan Ulus
7f43f07465 Use uint64 for integer hashing 2021-05-06 21:29:35 +03:00
Dogan Ulus
1a3c087f44 Small fixes and style improvements 2021-05-06 21:24:26 +03:00
Dogan Ulus
40b7acc199 Add missing BOOST_JSON_DECL declarations 2021-05-06 21:24:26 +03:00
Dogan Ulus
87a93dade5 Add std::hash specializations for json types 2021-05-06 21:24:26 +03:00
Dmitry Arkhipov
aae1863def value_to supports TupleLike types 2021-04-26 03:33:50 +03:00
Dmitry Arkhipov
ae6ca2a0a9 Remove unnecessary inclusion of <tuple> 2021-04-26 03:30:09 +03:00
Dmitry Arkhipov
0d65b0ada0 json::string is convertible to string_view 2021-04-26 03:25:45 +03:00
KoaLaYT
a53e2181d2 object deallocates the correct size 2021-04-25 19:39:39 +03:00
Dmitry Arkhipov
fce0e7b5dd Convert mantissa to double explicitly 2021-03-17 10:42:58 -07:00
Dmitry Arkhipov
3218fe2f09 Fix building on msvc-14.0 2021-03-17 10:42:58 -07:00
Dmitry Arkhipov
1c60f64346 Remove trailing whitespace 2021-03-17 10:42:58 -07:00
Dmitry Arkhipov
e580ace767 value_from supports char const* 2021-03-04 22:08:59 +03:00
Dmitry Arkhipov
964f106f39 Remove trailing whitespace 2021-03-04 21:54:12 +03:00
Dmitry Arkhipov
4de9c6fb6c Use division to compute smaller negative powers of 10 2021-03-01 14:08:11 +03:00
Dmitry Arkhipov
2b422f0a95 Remove trailing whitespace 2021-03-01 14:05:29 +03:00
Dmitry Arkhipov
f52b56d39d Don't check Boost version
The library was checking if Boost version is not below 1.73. This is an
artifact of pre-inclusion to Boost times. Currently in non-standalone mode the
library is only supported in Boost versions it is included with, so the
check is unnecessary. Moreso, the check caused errors when standalone
library was used alongside Boost.
2021-01-27 10:44:27 +03:00
Dmitry Arkhipov
2e876dd250 Add BOOST_JSON_SOURCE_POS
Replaced usage of BOOST_CURRENT_LOCATION with BOOST_JSON_SOURCE_POS.
Using BOOST_CURRENT_LOCATION results in warnings (and could probably
lead to ODR violations) when Json is used standalone, but alongside
Boost.
2021-01-26 20:54:18 +03:00
Dmitry Arkhipov
932b97e5ce Refactor value_from implementation:
fix #481, close #483

Remove internal uses of tag_invoke,
only using it from now on for user
customizations.
2021-01-12 15:10:14 -08:00
Vinnie Falco
9e67899cd5 Support standalone shared libraries
fix #467
2020-11-17 16:57:22 -08:00
Richard Hodges
21cdb11346 Fix value_to and value_from for MSVC-14.0:
close #465

value_to and value_from was incorrectly deducing that std::string was
"array-like" rather than "string-like", but only on msvc-14.0

Original test:

template<class T, typename std::enable_if<
    std::is_constructible<remove_cvref<T>, const char*, std::size_t>::value &&
    std::is_convertible<decltype(std::declval<T&>().data()), const char*>::value &&
    std::is_convertible<decltype(std::declval<T&>().size()), std::size_t>::value
>::type* = nullptr>

Which works for all compilers except msvc-14.0

New test:

template<class T, typename std::enable_if<
    std::is_constructible<remove_cvref<T>, const char*, std::size_t>::value &&
    std::is_convertible<decltype(std::declval<T&>().data()), const char*>::value &&
    std::is_integral<decltype(std::declval<T&>().size())>::value
>::type* = nullptr>

Note that each individual test works on all compilers. It seems to be
the conjuction of tests that caused msvc-14 to trip up.
2020-11-17 16:57:22 -08:00
Vinnie Falco
38c31a1812 Safer shared library behavior:
This solves a problem where there is more than
one instance of the library loaded into the process
and objects are shared across module boundaries.
2020-11-17 11:44:10 -08:00
Vinnie Falco
499ef7d4b1 Revert "Add value::is_integral"
This reverts commit 099a82957a.
2020-11-17 11:44:10 -08:00
Vinnie Falco
099a82957a Add value::is_integral 2020-11-16 10:18:48 -08:00