Commit Graph

364 Commits

Author SHA1 Message Date
Peter Dimov
abbfd46517 Remove uses of BOOST_NOEXCEPT 2024-01-17 07:14:05 +02:00
Peter Dimov
128fd9341f Remove uses of BOOST_CONSTEXPR 2024-01-17 07:09:31 +02:00
Peter Dimov
3ded81eed0 Remove uses of BOOST_SYSTEM_HAS_SYSTEM_ERROR 2024-01-17 06:49:19 +02:00
Peter Dimov
80e019069c Use snprintf in error_category_impl.hpp 2024-01-17 05:18:23 +02:00
Peter Dimov
00fb79f174 Remove requires_cxx11.hpp 2024-01-17 04:47:46 +02:00
Peter Dimov
44582f3c3c Use std::snprintf in detail/snprintf.hpp 2024-01-17 04:34:11 +02:00
Peter Dimov
f08e363c0e Use std::is_same in detail/is_same.hpp 2024-01-17 04:33:14 +02:00
Peter Dimov
1474498ccf Use std::enable_if in detail/enable_if.hpp 2024-01-17 04:32:29 +02:00
Peter Dimov
945b0591dd Unconditionally enable BOOST_SYSTEM_HAS_SYSTEM_ERROR 2024-01-17 04:14:23 +02:00
Peter Dimov
1a0b9a46a8 Remove static_assert workaround 2024-01-17 04:12:13 +02:00
Peter Dimov
f132dca4a9 Remove =default/=delete workarounds 2024-01-17 04:11:19 +02:00
Peter Dimov
81a9952695 Remove BOOST_NO_CXX11_EXPLICIT_CONVERSION_OPERATORS workarounds 2024-01-17 03:57:53 +02:00
Peter Dimov
2aa5d4d97f Add definitions of ::in_place_* for result specializations. Fixes #115. 2023-12-15 03:17:21 +02:00
Peter Dimov
52220a0351 Add definitions of result<T, E>::in_place_*. Refs #115. 2023-12-15 02:24:18 +02:00
Peter Dimov
d11dd4b396 Add operator&=( result&, unary-returning-result ) 2023-10-31 03:08:02 +02:00
Peter Dimov
ca5bca39ce Add operator&=( result&, unary-returning-value ) 2023-10-31 02:44:45 +02:00
Peter Dimov
a58115cb50 Reorder operator& code for better codegen 2023-10-31 01:51:38 +02:00
Peter Dimov
54d3b253b1 Add operator&( result, unary-returning-result ) 2023-10-29 20:57:29 +02:00
Peter Dimov
194b84e663 Add operator&( result, unary-returning-value ) 2023-10-29 19:37:43 +02:00
Peter Dimov
7ffd63d54c Fix rvalue result<void> cases 2023-10-29 19:13:11 +02:00
Peter Dimov
dc73ca428b Add operator|( result, nullary-returning-result ) 2023-10-29 03:20:08 +03:00
Peter Dimov
c1fa3619b6 Add operator|( result, nullary-returning-value ) 2023-10-29 02:32:19 +03:00
Peter Dimov
0cd351014b Remove C++14-ism 2023-10-29 01:41:50 +03:00
Peter Dimov
d38e54d4c3 Add operator|( result, value ) 2023-10-29 01:30:01 +03:00
Peter Dimov
84fd43e14a Update C++03 deprecation message 2023-10-19 18:15:05 +03:00
Peter Dimov
b0ef682e3d Update documentation 2023-09-14 02:20:46 +03:00
Peter Dimov
c360ff1b1c Add a converting constructor to result<void> 2023-09-12 04:48:45 +03:00
Peter Dimov
951b3fe7b4 Add result<U&, E> specialization. Fixes #72. 2023-09-12 03:34:24 +03:00
Peter Dimov
a57c568324 Do not use <shared_mutex> when BOOST_USE_WINAPI_VERSION is 0x5xx (Windows XP). Fixes #113. 2023-09-04 16:28:34 +03:00
Peter Dimov
2e7e46a802 Update C++03 deprecation message 2023-06-03 02:31:27 +03:00
Peter Dimov
32dbf1b992 Disable use of <shared_mutex> under the XP toolsets (v140_xp and v141_xp). Fixes #110. 2023-04-30 18:44:56 +03:00
Klemens
c5c49894e6 Made result::error movable.
Closes #108.
2023-03-17 12:53:14 +08:00
Peter Dimov
ee80491cab Add C++03 deprecation notice 2023-03-06 07:49:33 +02:00
Peter Dimov
4b90524729 Disable the constexpr constructors on GCC 4.7 2023-03-01 05:18:23 +02:00
Peter Dimov
6ac5f23999 Make error_category constructors unconditionally constexpr 2023-03-01 03:36:07 +02:00
Peter Dimov
c92d50abbd Do not consider types with explicit operator bool (such as result itself) constructible from bool for the purposes of result construction. Refs #104. 2023-01-22 02:07:28 +02:00
Peter Dimov
8ce2a9f835 Disable result converting constructor when T is convertible from the rhs result<T2, E2>. Refs #104. 2023-01-22 01:22:02 +02:00
Peter Dimov
f0b27c5826 Enable implicit construction when the alternative is explicitly constructible from the argument. Fixes #103. 2023-01-21 20:09:53 +02:00
Peter Dimov
71ee26c188 Move the stdcat mutex into init_stdcat() as a local static to fix msvc-12.0 2023-01-20 01:22:42 +02:00
Peter Dimov
8449c62162 Update detail/mutex.hpp to use std::shared_mutex under the MS STL 2023-01-19 18:05:21 +02:00
Peter Dimov
3e6af15652 Add system/detail/mutex.hpp, use it in error_category_impl.hpp 2023-01-19 12:04:06 +02:00
Peter Dimov
b3faedfe3e Extend Clang 6 workaround to Clang 7 under Android. Fixes #100. 2023-01-10 03:09:20 +02:00
Peter Dimov
32bf67f748 error_code wrapping std::error_code should never compare equal to error_code not wrapping std (because of hash_value.) Fixes #101. 2023-01-07 19:56:34 +02:00
Peter Dimov
36e1236a0f Remove _Addr assignment from the constructor of std_category. Fixes #98. 2022-12-10 22:17:51 +02:00
Peter Dimov
14f779e234 Update Win32 translation table. Closes #97. 2022-12-10 18:38:19 +02:00
Peter Dimov
7ae6b317f3 Only disable C4351 on msvc-12.0 and earlier (refs #96) 2022-10-26 15:52:18 +03:00
Peter Dimov
1e4c050d6c Add result<>::emplace (refs #85) 2022-10-18 00:46:59 +03:00
Peter Dimov
20ce51858b Add in_place_value, in_place_error to result<>. Refs #93. 2022-09-27 18:18:16 +03:00
Peter Dimov
52d7429473 Add value_type, error_type typedefs to result. Refs #93. 2022-09-26 21:20:40 +03:00
Peter Dimov
53c00841fc Add support for BOOST_SYSTEM_DISABLE_THREADS (refs #92) 2022-09-08 18:32:26 +03:00