|
5e2bce1baa
|
Add operator<< for monostate
|
2022-01-31 17:55:26 +02:00 |
|
|
573ef77382
|
Move unsigned ix_ after the elements to avoid need to adjust rdi (closes #30)
|
2021-12-09 21:28:35 +02:00 |
|
|
3fc7540733
|
Only define operator<< when all contained types are streamable (refs #31)
|
2021-12-09 18:39:03 +02:00 |
|
|
2da13befd7
|
Work around mysterious errors with gcc, msvc-14.1, and clang-cl
|
2021-09-15 03:28:29 +03:00 |
|
|
e668c099ce
|
Add operator<< for variant
|
2021-09-15 02:51:11 +03:00 |
|
|
8fd9f830a9
|
Add proper type deduction to visit_by_index
|
2021-09-15 01:30:09 +03:00 |
|
|
ad06c9b923
|
Add visit_by_index
|
2021-09-14 21:06:01 +03:00 |
|
|
1af7b165cf
|
BOOST_VARIANT2_CX14_ASSERT must be empty under C++11
|
2021-09-11 18:22:46 +03:00 |
|
|
49bff72be0
|
Define and use a helper macro BOOST_VARIANT2_CX14_ASSERT in constexpr functions
|
2021-09-11 18:11:17 +03:00 |
|
|
59780ba08e
|
Only assert when C++14
|
2021-09-11 18:00:29 +03:00 |
|
|
dce8174550
|
Make unsafe_get public
|
2021-09-11 17:29:21 +03:00 |
|
|
9d40bc80f1
|
Use BOOST_ASSERT instead of assert
|
2021-09-11 17:23:29 +03:00 |
|
|
be6ddf9fdc
|
Add boost/variant2.hpp
|
2021-09-11 17:19:09 +03:00 |
|
|
3bc9a57c9b
|
Merge branch 'feature/issue-26' into develop
|
2021-03-13 18:23:39 +02:00 |
|
|
3ca95a65df
|
Use boost::hash in hash_value, not std::hash (closes #27)
|
2021-03-13 05:08:03 +02:00 |
|
|
a2dab8c7d3
|
Refactor detail::hash_value_L
|
2021-03-13 04:10:41 +02:00 |
|
|
90cda5339f
|
Disable U&& constructor for derived types
|
2021-03-12 23:40:14 +02:00 |
|
|
fb3ce863ff
|
Add MSVC workaround for monospace constexpr (refs #25)
|
2021-03-08 03:26:40 +02:00 |
|
|
3c9f4e56bf
|
Fix visit codegen regression when NDEBUG is not defined
|
2021-01-24 17:27:24 +02:00 |
|
|
3015e56bcb
|
GCC bug 63707 has been fixed for GCC 11
|
2021-01-23 20:36:12 +02:00 |
|
|
453b00dec8
|
Use (i+1)*2+j for the internal index in the double-buffered case, to avoid branches
|
2021-01-13 02:10:12 +02:00 |
|
|
5586ebaa64
|
Add support for visit<R>
|
2020-06-03 17:00:13 +03:00 |
|
|
84ea994325
|
Add specialization for variant_storage_impl<mp_false, ...>
|
2020-05-09 19:56:27 +03:00 |
|
|
465e5bac3d
|
Add specialization for variant_storage_impl<mp_true, ...> to reduce instantiations
|
2020-05-09 18:14:12 +03:00 |
|
|
772ef0d312
|
Support derived types in visit
|
2020-05-06 20:11:03 +03:00 |
|
|
4b60dee4b6
|
Avoid gcc warning 'base class should be explicitly initialized in copy constructor'
|
2020-02-01 01:18:40 +02:00 |
|
|
972280e59f
|
Remove commented-out variant_copy_base
|
2020-01-23 01:08:32 +02:00 |
|
|
ef2ef292b9
|
The msvc-14.0 workarounds are no longer needed
|
2020-01-22 20:14:11 +02:00 |
|
|
3b2fb1a48a
|
Split variant_copy_base into separate cc/ca/mc/ma bases; avoids multiple inheritance, which is a penalty in the MS ABI
|
2020-01-22 19:59:59 +02:00 |
|
|
4f81882bfd
|
Explicitly disable move constructor when needed
|
2020-01-22 18:30:36 +02:00 |
|
|
17bc06b090
|
Apply msvc-14.0 workarounds
|
2020-01-22 17:38:45 +02:00 |
|
|
c4cad3e96a
|
Use an intermediate trivial base for trivial variants
|
2020-01-22 17:09:15 +02:00 |
|
|
a795f9cf01
|
Add missing inline
|
2020-01-11 06:41:21 +02:00 |
|
|
1f05cdfb17
|
Include <functional>, for g++ trunk (10.0)
|
2020-01-11 06:06:54 +02:00 |
|
|
b3229d48b7
|
gcc < 7 doesn't like specializing std::hash in a different namespace
|
2020-01-11 05:27:57 +02:00 |
|
|
fece11142c
|
Add hashing support
|
2020-01-11 04:51:30 +02:00 |
|
|
f5d9662946
|
Support -fno-exceptions
|
2019-06-03 02:46:59 +03:00 |
|
|
adeb970be6
|
Introduce detail::throw_bad_variant_access
|
2019-06-03 01:05:15 +03:00 |
|
|
2d990f774a
|
Remove _real_index
|
2019-05-12 19:34:21 +03:00 |
|
|
3041fff85c
|
Remove expected
|
2019-05-12 18:56:54 +03:00 |
|
|
7f7c74522b
|
Strong guarantee on assignment
|
2019-05-12 01:46:55 +03:00 |
|
|
c3f9beaadc
|
Strong guarantee on emplace
|
2019-05-12 00:38:21 +03:00 |
|
|
70fbd17be9
|
Change A... to A&&... in is_constructible invocations
|
2019-04-09 21:14:13 +03:00 |
|
|
e8e56139a8
|
Update msvc workarounds for msvc-14.2
|
2019-04-09 20:17:28 +03:00 |
|
|
2d6385031e
|
Fix emplace for types with a deleted move constructor (in the not trivially destructible case)
|
2019-04-09 19:22:04 +03:00 |
|
|
9f7e525984
|
Fix emplace for types with a deleted move constructor (in the trivially destructible case)
|
2019-04-09 18:28:18 +03:00 |
|
|
3808c9b122
|
Fix variant_npos warning
|
2019-03-25 17:40:39 +02:00 |
|
|
9875cfdc98
|
Add variant_npos and valueless_by_exception()
|
2019-03-25 16:17:06 +02:00 |
|
|
688849f9e8
|
Remove outcome.hpp and result.hpp
|
2019-03-25 16:16:10 +02:00 |
|
|
204bcce9df
|
Make relational operators constexpr; add test/variant_eq_ne_cx.cpp
|
2019-03-06 00:26:55 +02:00 |
|