2
0
mirror of https://github.com/boostorg/json.git synced 2026-02-03 09:12:17 +00:00
Commit Graph

761 Commits

Author SHA1 Message Date
Dmitry Arkhipov
8f7b1edef9 UDT serialization of optionals 2024-09-16 18:15:25 +03:00
Dmitry Arkhipov
4a5e6bbccf UDT serialization of variants 2024-09-16 18:15:25 +03:00
Dmitry Arkhipov
097a3da7d2 UDT serialization of described enums 2024-09-16 18:15:25 +03:00
Dmitry Arkhipov
42576b096a UDT serialization of described structs 2024-09-16 18:15:25 +03:00
Dmitry Arkhipov
5666575e7b UDT serialization of tuples 2024-09-16 18:15:25 +03:00
Dmitry Arkhipov
d291537423 UDT serialization of maps 2024-09-16 18:15:25 +03:00
Dmitry Arkhipov
3caf6daa7f UDT serialization of sequences 2024-09-16 18:15:25 +03:00
Dmitry Arkhipov
bf39bc29c4 UDT serialization of strings 2024-09-16 18:15:25 +03:00
Dmitry Arkhipov
532e21aa27 refactor fallback reset to null 2024-09-16 18:15:25 +03:00
Dmitry Arkhipov
473aee9cd0 UDT serialization of bool and null 2024-09-16 18:15:25 +03:00
Dmitry Arkhipov
b787cf1bc7 initial implementation of UDT serialization
currently only arithmetic types are supported
2024-09-16 18:15:25 +03:00
Dmitry Arkhipov
0f48f98a5c refactor treatment of non-trivials by stack
* trivial copyability is enough for fast approach;
* non-trivials are stored in a linked list interspersed with trivials;
* objects can be moved into stack
* non-trivial holders aren't polymorphic
2024-09-16 18:15:25 +03:00
Vinnie Falco
a7bdbcb1d3 stack can store nontrivial types 2024-09-16 18:15:25 +03:00
Dmitry Arkhipov
a1ad2629a7 use helper for serialization implementation 2024-09-16 18:15:25 +03:00
Dmitry Arkhipov
9e6d3de3e9 silence GCC false positives in tests 2024-09-10 14:51:02 +03:00
Dmitry Arkhipov
cac6d97552 fix value_ref segfaulting on GCC 14 2024-09-10 11:21:48 +03:00
Dmitry Arkhipov
6e3ae77d63 add gdb pretty printers 2024-09-09 21:10:41 +03:00
Dmitry Arkhipov
324a7eb147 BOOST_JSON_ALLOW_DEPRECATED macro 2024-07-28 09:55:54 +03:00
Dmitry Arkhipov
52264f68e4 deprecate GCC older than 5.0 2024-07-08 14:08:13 +03:00
Dmitry Arkhipov
e23879d754 accessor functions have source_location parameters 2024-06-17 16:41:15 +03:00
Dmitry Arkhipov
9b823e095b try_at functions 2024-06-17 16:41:15 +03:00
Dmitry Arkhipov
6bb79c4a25 try_as_ functions 2024-06-17 14:07:14 +03:00
Dmitry Arkhipov
4ebd252a13 try_at_pointer and try_set_at_pointer 2024-06-17 09:28:14 +03:00
Dmitry Arkhipov
274a0f5537 try_to_number 2024-06-17 09:18:09 +03:00
Dmitry Arkhipov
3d334a74e1 add references to external types 2024-06-16 15:29:15 +03:00
Dmitry Arkhipov
6ab2ad816b fix reference errors 2024-06-14 15:52:58 +03:00
Dmitry Arkhipov
038916a0d4 use Python implementation of docca 2024-06-13 22:48:42 +03:00
Dmitry Arkhipov
c4af9affc0 refactor string parsing 2024-05-27 22:47:47 +03:00
Dmitry Arkhipov
1f6f1a2384 handle missing error case in direct parsing 2024-05-13 21:06:56 +03:00
Dmitry Arkhipov
a573496cef fix lcov markings 2024-05-13 16:27:18 +03:00
Vaishnav Katiyar
dc9521601c allow_invalid_utf16 2024-04-10 16:45:06 +05:30
Dmitry Arkhipov
9f85ed6d62 fix value_to for variants
After we allowed exceptions to propagate through error_code-based
conversions (when the user invoked value_to, rather than try_value_to),
we inadvertently broke value_to for variants, because they relied on
exceptions being caught by try_value_to. This change disables exception
propagation for exactly one level of nesting.
2024-04-03 15:22:27 +03:00
Dmitry Arkhipov
2883ff1689 conversion of described classes supports private members 2024-03-02 10:59:31 +03:00
Dmitry Arkhipov
f3acd38f9b simplify definition of BOOST_JSON_LIKELY/UNLIKELY 2024-02-13 13:05:55 +03:00
Dmitry Arkhipov
b7f4665b52 remove BOOST_SYMBOL_VISIBLE fallback 2024-02-13 13:05:55 +03:00
Dmitry Arkhipov
61e49622ed remove BOOST_THROW_EXCEPTION fallback 2024-02-13 13:05:55 +03:00
Dmitry Arkhipov
48286f443a remove BOOST_NOINLINE fallback 2024-02-13 13:05:55 +03:00
Dmitry Arkhipov
5271b92ba9 remove BOOST_FORCEINLINE fallback 2024-02-13 13:05:55 +03:00
Dmitry Arkhipov
3fed67e52a remove BOOST_FALLTHROUGH 2024-02-13 13:05:55 +03:00
Dmitry Arkhipov
e25d547978 remove BOOST_STATIC_ASSERT fallback 2024-02-13 13:05:55 +03:00
Dmitry Arkhipov
0201abe2df remove BOOST_ASSERT fallback 2024-02-13 13:05:55 +03:00
Dmitry Arkhipov
8ae26f30f0 remove BOOST_NORETURN fallback 2024-02-13 13:05:55 +03:00
Dmitry Arkhipov
3d8c37d6b3 remove BOOST_JSON_NODISCARD 2024-02-13 13:05:55 +03:00
Dmitry Arkhipov
5663210adf use Boost.Endian for endianness 2024-02-12 22:52:36 +03:00
Dmitry Arkhipov
bacc644f93 deprecate type aliases 2024-02-09 13:19:49 +03:00
Dmitry Arkhipov
411b9a9201 explicitly require default construction in value_to for described classes 2024-02-08 20:09:12 +03:00
Dmitry Arkhipov
b031e0d317 better document visit 2024-02-07 23:11:35 +03:00
Dmitry Arkhipov
e8d8409928 rvalue ref overload for visit 2024-02-07 23:11:35 +03:00
Dmitry Arkhipov
b07a034870 fix references used in visit
1. Fix references in return type
2. Pass nullptr to the visitor with the same value category as the argument.
    This is done for uniformity.
2024-02-07 21:39:54 +03:00
Dmitry Arkhipov
ed3a618e4c direct parsing supports paths 2024-02-06 20:01:31 +03:00