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

526 Commits

Author SHA1 Message Date
Dmitry Arkhipov
bfedf3ca5d enable conversion for derived described structs 2025-06-25 14:07:55 +03:00
Dmitry Arkhipov
6c79a2cf88 Switch to asciidoc documentation 2025-06-18 15:12:04 +03:00
Dmitry Arkhipov
2ad2ed2627 special target for heavy tests 2025-02-27 15:46:02 +03:00
Dmitry Arkhipov
9b3b993ff6 short circuit serializer::read on empty buffer 2024-10-30 15:33:31 +03:00
Dmitry Arkhipov
7b16bf74e6 increase value_to coverage 2024-10-23 22:59:25 +03:00
Dmitry Arkhipov
fc255cf114 increase parse_into coverage 2024-10-23 15:43:59 +03:00
Dmitry Arkhipov
3857c2ab91 allow extra members for converted structs 2024-10-23 15:43:59 +03:00
Dmitry Arkhipov
6071cd5808 simplify exception wrapping in value_to 2024-10-22 16:27:50 +03:00
Dmitry Arkhipov
27c40ee8c3 fix parse_into handling of tuple of the wrong size 2024-10-07 21:35:43 +03:00
Dmitry Arkhipov
b036074e4b check for input size larger than allowed size of sequence 2024-10-07 18:07:57 +03:00
Dmitry Arkhipov
906bf1a70b remove deprecated init-list behavior 2024-09-18 12:47:49 +03:00
Dmitry Arkhipov
019577c709 remove deprecated type aliases 2024-09-18 12:47:49 +03:00
Dmitry Arkhipov
8e1fc20896 direct serialization docs 2024-09-16 18:47:48 +03:00
Dmitry Arkhipov
7b493e792a UDT serialization of paths 2024-09-16 18:15:25 +03:00
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
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
Dmitry Arkhipov
cbab2515a8 detail::stack tests 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
6e3ae77d63 add gdb pretty printers 2024-09-09 21:10:41 +03:00
Dmitry Arkhipov
72175b0769 jam file cleanup 2024-08-26 21:54:18 +10:00
Dmitry Arkhipov
7e2f458b41 silence GCC false positive warning in tests 2024-07-03 08:23:44 +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
0b410ea466 don't build tests in CMake by default 2024-05-17 18:36:57 +03:00
Dmitry Arkhipov
1f6f1a2384 handle missing error case in direct parsing 2024-05-13 21:06:56 +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
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
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
Dmitry Arkhipov
14dfadb44b add conversion support for paths 2024-02-06 20:01:31 +03:00
Dmitry Arkhipov
194aefb376 do not allow self-referential sequences
If the sequence's value type is the same type as the sequence, our
sequence conversion algorithms can't handle them, because they clearly
have some additional data associated with them. As such, they need
special treatment.
2024-02-05 14:07:15 +03:00
Dmitry Arkhipov
1eb855b470 fix build as CMake subdirectory
Also add tests for different CMake use cases
2024-01-01 23:49:29 +03:00
Dmitry Arkhipov
3d17afc229 increase testing of CMake build files 2023-10-26 09:14:52 +03:00
Dmitry Arkhipov
a0fbf1d906 fix msvc build of tests 2023-10-25 11:29:13 +03:00
Dmitry Arkhipov
e19eddeaee parse_into clears strings before filling them 2023-10-09 16:59:39 +03:00