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