Skip to content

Commit ed1518f

Browse files
committed
stop being so precious with the execution policies
1 parent f454ac4 commit ed1518f

File tree

1 file changed

+8
-28
lines changed

1 file changed

+8
-28
lines changed

include/stdexec/__detail/__execution_legacy.hpp

Lines changed: 8 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -23,8 +23,6 @@
2323

2424
namespace stdexec {
2525

26-
struct __hidden_construction { };
27-
2826
#if STDEXEC_HAS_EXECUTION_POLICY()
2927

3028
using sequenced_policy = std::execution::sequenced_policy;
@@ -40,27 +38,13 @@ namespace stdexec {
4038

4139
#else
4240

43-
struct sequenced_policy {
44-
constexpr explicit sequenced_policy(__hidden_construction) { };
45-
sequenced_policy(const sequenced_policy&) = delete;
46-
sequenced_policy& operator=(const sequenced_policy&) = delete;
47-
};
48-
49-
struct parallel_policy {
50-
constexpr explicit parallel_policy(__hidden_construction) { };
51-
parallel_policy(const parallel_policy&) = delete;
52-
parallel_policy& operator=(const parallel_policy&) = delete;
53-
};
54-
55-
struct parallel_unsequenced_policy {
56-
constexpr explicit parallel_unsequenced_policy(__hidden_construction) { };
57-
parallel_unsequenced_policy(const parallel_unsequenced_policy&) = delete;
58-
parallel_unsequenced_policy& operator=(const parallel_unsequenced_policy&) = delete;
59-
};
41+
struct sequenced_policy { };
42+
struct parallel_policy { };
43+
struct parallel_unsequenced_policy { };
6044

61-
inline constexpr sequenced_policy seq{__hidden_construction{}};
62-
inline constexpr parallel_policy par{__hidden_construction{}};
63-
inline constexpr parallel_unsequenced_policy par_unseq{__hidden_construction{}};
45+
inline constexpr sequenced_policy seq{};
46+
inline constexpr parallel_policy par{};
47+
inline constexpr parallel_unsequenced_policy par_unseq{};
6448

6549
template <typename>
6650
inline constexpr bool is_execution_policy_v = false;
@@ -87,13 +71,9 @@ namespace stdexec {
8771

8872
#else
8973

90-
struct unsequenced_policy {
91-
constexpr explicit unsequenced_policy(__hidden_construction) { };
92-
unsequenced_policy(const unsequenced_policy&) = delete;
93-
unsequenced_policy& operator=(const unsequenced_policy&) = delete;
94-
};
74+
struct unsequenced_policy { };
9575

96-
inline constexpr unsequenced_policy unseq{__hidden_construction{}};
76+
inline constexpr unsequenced_policy unseq{};
9777

9878
template <>
9979
inline constexpr bool is_execution_policy_v<unsequenced_policy> = true;

0 commit comments

Comments
 (0)