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