2
0
mirror of https://github.com/boostorg/json.git synced 2026-01-19 04:12:14 +00:00

33 Commits

Author SHA1 Message Date
Dmitry Arkhipov
427baa6e47 remove dependency on StaticAssert 2025-10-24 19:33:52 +03:00
Dmitry Arkhipov
7b16bf74e6 increase value_to coverage 2024-10-23 22:59:25 +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
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
bacc644f93 deprecate type aliases 2024-02-09 13:19:49 +03:00
Dmitry Arkhipov
14dfadb44b add conversion support for paths 2024-02-06 20:01:31 +03:00
Dmitry Arkhipov
a07e38be41 is_variant_like 2023-09-09 13:09:07 +03:00
Peter Dimov
557676b68c Add a variant2 test to value_to.cpp, extracted from #925 2023-09-03 23:57:11 +03:00
Dmitry Arkhipov
c3d6757ab9 allow exception propagation from nested conversions
Specifically, when user invokes throwing value_to, when it goes to
non-throwing conversion, then back to throwing conversion, exceptions
will be able to propogate still.
2023-07-03 17:59:14 +03:00
Dmitry Arkhipov
3956bdbb78 fix asan failures
Changes to array sizes in tests are due to asan bug.
2023-06-07 14:12:57 +03:00
Dmitry Arkhipov
b9e8b2edfe contextual conversions 2023-06-01 21:45:56 +03:00
Dmitry Arkhipov
36552f0c94 remove namespace macros 2023-01-02 18:41:01 +03:00
Dmitry Arkhipov
8659e7d694 value_to supports missing elements for std::optional 2023-01-02 14:09:40 +03:00
Dmitry Arkhipov
893df142b6 fix value_from support for proxy iterators 2022-11-20 19:25:35 +03:00
Dmitry Arkhipov
76e1dba8ba value_to/from supports described enums 2022-10-20 21:02:48 +03:00
Dmitry Arkhipov
ce2b5f82ac value_to/from supports described structs 2022-10-20 21:02:48 +03:00
Dmitry Arkhipov
6ff132c64c value_to/from supports std::variant 2022-10-18 15:58:30 +03:00
Dmitry Arkhipov
8033159b71 value_to/from supports std::optional 2022-10-16 10:31:59 +03:00
Dmitry Arkhipov
0d8a14c3a1 non-throwing conversions 2022-10-14 17:22:23 +03:00
Dmitry Arkhipov
ce659d1666 don't include value_from.hpp from impl/value_ref.hpp 2022-10-14 17:02:26 +03:00
Dmitry Arkhipov
7f10decb61 opt-in null-like conversion 2022-09-26 12:10:00 +03:00
Dmitry Arkhipov
3ccb526ee7 conversion to nullptr_t 2022-09-26 12:10:00 +03:00
Dmitry Arkhipov
b2d5b864ff refactor conversion
* take advantage of mp11
* split container_traits into several traits and helpers
* split map_traits into several traits
* use value_type more consistently
* refactor detail::inserter
* use detail::inserter with map-like types
* refactor conversion of tuple-like to array
* require unique keys for ToMapLike types (without it multimaps don't
  round-trip)
2022-09-26 12:10:00 +03:00
Dmitry Arkhipov
31dd295232 Allow external libraries to forward declare value_to/from 2021-10-20 22:35:21 +03:00
Dmitry Arkhipov
351603c9b2 value_to supports std::array 2021-05-23 22:49:02 +03:00
Dmitry Arkhipov
aae1863def value_to supports TupleLike types 2021-04-26 03:33:50 +03:00
Vinnie Falco
531287af2b long double is not a fundamental type:
fix #432

Users have to opt-in to the narrowing conversion
by using static_cast.
2020-10-04 11:21:55 -07:00
Vinnie Falco
9b86962fbc Add metadata and update repo links 2020-10-04 11:06:25 -07:00
Vinnie Falco
94e26abb66 standalone is an inline namespace
fix #181, close #244
2020-09-01 15:44:47 -07:00
Krystian Stasiowski
904252de0b Fix repo links
close #123
2020-07-03 11:51:58 -07:00
Vinnie Falco
f47fbeb1a5 Refactor value conversions 2020-06-08 15:11:12 -07:00