xref: /openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__p2300.hpp (revision 36137e09614746b13603b5fbae79e6f70819c46b)
15b5d15b3SPatrick Williams /*
25b5d15b3SPatrick Williams  * Copyright (c) 2022 NVIDIA Corporation
35b5d15b3SPatrick Williams  *
45b5d15b3SPatrick Williams  * Licensed under the Apache License Version 2.0 with LLVM Exceptions
55b5d15b3SPatrick Williams  * (the "License"); you may not use this file except in compliance with
65b5d15b3SPatrick Williams  * the License. You may obtain a copy of the License at
75b5d15b3SPatrick Williams  *
85b5d15b3SPatrick Williams  *   https://llvm.org/LICENSE.txt
95b5d15b3SPatrick Williams  *
105b5d15b3SPatrick Williams  * Unless required by applicable law or agreed to in writing, software
115b5d15b3SPatrick Williams  * distributed under the License is distributed on an "AS IS" BASIS,
125b5d15b3SPatrick Williams  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
135b5d15b3SPatrick Williams  * See the License for the specific language governing permissions and
145b5d15b3SPatrick Williams  * limitations under the License.
155b5d15b3SPatrick Williams  */
165b5d15b3SPatrick Williams #pragma once
175b5d15b3SPatrick Williams 
185b5d15b3SPatrick Williams // Internal header, do not include directly
195b5d15b3SPatrick Williams 
205e7ef083SPatrick Williams #ifdef STDEXEC_DISABLE_STD_DEPRECATIONS
215e7ef083SPatrick Williams #define STDEXEC_STD_DEPRECATED
225e7ef083SPatrick Williams #else
235e7ef083SPatrick Williams #define STDEXEC_STD_DEPRECATED                                                 \
245e7ef083SPatrick Williams     [[deprecated(                                                              \
25e61c679bSPatrick Williams         "Please access this entity in the ::stdexec:: namespace. Define "      \
26e61c679bSPatrick Williams         "STDEXEC_DISABLE_STD_DEPRECATIONS to silence this "                    \
27e61c679bSPatrick Williams         "warning.")]]
285e7ef083SPatrick Williams #endif
295e7ef083SPatrick Williams 
305b5d15b3SPatrick Williams namespace std
315b5d15b3SPatrick Williams {
325e7ef083SPatrick Williams //////////////////////////////////////////////////////////////////////////////
335b5d15b3SPatrick Williams // <functional>
345e7ef083SPatrick Williams STDEXEC_STD_DEPRECATED
355e7ef083SPatrick Williams inline constexpr stdexec::tag_invoke_t tag_invoke{};
365b5d15b3SPatrick Williams 
375e7ef083SPatrick Williams template <class _Tag, class... _Ts>
385e7ef083SPatrick Williams using tag_invoke_result STDEXEC_STD_DEPRECATED =
395e7ef083SPatrick Williams     stdexec::tag_invoke_result<_Tag, _Ts...>;
405e7ef083SPatrick Williams 
415e7ef083SPatrick Williams template <class _Tag, class... _Ts>
425e7ef083SPatrick Williams using tag_invoke_result_t STDEXEC_STD_DEPRECATED =
435e7ef083SPatrick Williams     stdexec::tag_invoke_result_t<_Tag, _Ts...>;
445e7ef083SPatrick Williams 
455e7ef083SPatrick Williams template <class _Tag, class... _Ts>
465e7ef083SPatrick Williams concept tag_invocable /*STDEXEC_STD_DEPRECATED*/ =
475e7ef083SPatrick Williams     stdexec::tag_invocable<_Tag, _Ts...>;
485e7ef083SPatrick Williams 
495e7ef083SPatrick Williams template <class _Tag, class... _Ts>
505e7ef083SPatrick Williams concept nothrow_tag_invocable /*STDEXEC_STD_DEPRECATED*/ =
515e7ef083SPatrick Williams     stdexec::nothrow_tag_invocable<_Tag, _Ts...>;
525e7ef083SPatrick Williams 
535e7ef083SPatrick Williams template <auto& _Tag>
545e7ef083SPatrick Williams using tag_t STDEXEC_STD_DEPRECATED = stdexec::tag_t<_Tag>;
555e7ef083SPatrick Williams 
565e7ef083SPatrick Williams //////////////////////////////////////////////////////////////////////////////
575b5d15b3SPatrick Williams // <stop_token>
585e7ef083SPatrick Williams template <class _Token>
595e7ef083SPatrick Williams concept stoppable_token /*STDEXEC_STD_DEPRECATED*/ =
605e7ef083SPatrick Williams     stdexec::stoppable_token<_Token>;
615b5d15b3SPatrick Williams 
625e7ef083SPatrick Williams template <class _Token, typename _Callback, typename _Initializer = _Callback>
635e7ef083SPatrick Williams concept stoppable_token_for /*STDEXEC_STD_DEPRECATED*/ =
645e7ef083SPatrick Williams     stdexec::stoppable_token_for<_Token, _Callback, _Initializer>;
655e7ef083SPatrick Williams 
665e7ef083SPatrick Williams template <class _Token>
675e7ef083SPatrick Williams concept unstoppable_token /*STDEXEC_STD_DEPRECATED*/ =
685e7ef083SPatrick Williams     stdexec::unstoppable_token<_Token>;
695e7ef083SPatrick Williams 
705e7ef083SPatrick Williams using never_stop_token STDEXEC_STD_DEPRECATED = stdexec::never_stop_token;
715e7ef083SPatrick Williams using in_place_stop_token STDEXEC_STD_DEPRECATED = stdexec::in_place_stop_token;
725e7ef083SPatrick Williams using in_place_stop_source STDEXEC_STD_DEPRECATED =
735e7ef083SPatrick Williams     stdexec::in_place_stop_source;
745e7ef083SPatrick Williams 
755e7ef083SPatrick Williams template <class _Callback>
765e7ef083SPatrick Williams using in_place_stop_callback STDEXEC_STD_DEPRECATED =
775e7ef083SPatrick Williams     stdexec::in_place_stop_callback<_Callback>;
785e7ef083SPatrick Williams 
795e7ef083SPatrick Williams //////////////////////////////////////////////////////////////////////////////
805e7ef083SPatrick Williams // <execution>
815b5d15b3SPatrick Williams namespace execution
825b5d15b3SPatrick Williams {
835b5d15b3SPatrick Williams // [exec.queries], general queries
845e7ef083SPatrick Williams using get_scheduler_t STDEXEC_STD_DEPRECATED = stdexec::get_scheduler_t;
855e7ef083SPatrick Williams using get_delegatee_scheduler_t STDEXEC_STD_DEPRECATED =
865e7ef083SPatrick Williams     stdexec::get_delegatee_scheduler_t;
875e7ef083SPatrick Williams using get_allocator_t STDEXEC_STD_DEPRECATED = stdexec::get_allocator_t;
885e7ef083SPatrick Williams using get_stop_token_t STDEXEC_STD_DEPRECATED = stdexec::get_stop_token_t;
895e7ef083SPatrick Williams STDEXEC_STD_DEPRECATED
905e7ef083SPatrick Williams inline constexpr stdexec::get_scheduler_t get_scheduler{};
915e7ef083SPatrick Williams STDEXEC_STD_DEPRECATED
925e7ef083SPatrick Williams inline constexpr stdexec::get_delegatee_scheduler_t get_delegatee_scheduler{};
935e7ef083SPatrick Williams STDEXEC_STD_DEPRECATED
945e7ef083SPatrick Williams inline constexpr stdexec::get_allocator_t get_allocator{};
955e7ef083SPatrick Williams STDEXEC_STD_DEPRECATED
965e7ef083SPatrick Williams inline constexpr stdexec::get_stop_token_t get_stop_token{};
975b5d15b3SPatrick Williams 
985e7ef083SPatrick Williams template <class _StopTokenProvider>
995e7ef083SPatrick Williams using stop_token_of_t STDEXEC_STD_DEPRECATED =
1005e7ef083SPatrick Williams     stdexec::stop_token_of_t<_StopTokenProvider>;
1015b5d15b3SPatrick Williams 
1025b5d15b3SPatrick Williams // [exec.env], execution environments
1035932cd67SPatrick Williams struct __no_env
1045932cd67SPatrick Williams {};
1055932cd67SPatrick Williams 
1065932cd67SPatrick Williams using no_env STDEXEC_STD_DEPRECATED = __no_env;
1075e7ef083SPatrick Williams using get_env_t STDEXEC_STD_DEPRECATED = stdexec::get_env_t;
1085e7ef083SPatrick Williams // using forwarding_env_query_t STDEXEC_STD_DEPRECATED =
1095e7ef083SPatrick Williams // stdexec::forwarding_env_query_t; // BUGBUG
1105e7ef083SPatrick Williams STDEXEC_STD_DEPRECATED
1115e7ef083SPatrick Williams inline constexpr stdexec::get_env_t get_env{};
1125e7ef083SPatrick Williams // inline constexpr stdexec::forwarding_env_query_t forwarding_env_query{}; //
1135e7ef083SPatrick Williams // BUGBUG
1145b5d15b3SPatrick Williams 
1155e7ef083SPatrick Williams template <class _EnvProvider>
1165e7ef083SPatrick Williams using env_of_t STDEXEC_STD_DEPRECATED = stdexec::env_of_t<_EnvProvider>;
1175b5d15b3SPatrick Williams 
1185b5d15b3SPatrick Williams // [exec.sched], schedulers
1195e7ef083SPatrick Williams template <class _Scheduler>
1205e7ef083SPatrick Williams concept scheduler /*STDEXEC_STD_DEPRECATED*/ = stdexec::scheduler<_Scheduler>;
1215b5d15b3SPatrick Williams 
1225b5d15b3SPatrick Williams // [exec.sched_queries], scheduler queries
1235e7ef083SPatrick Williams using forward_progress_guarantee STDEXEC_STD_DEPRECATED =
1245e7ef083SPatrick Williams     stdexec::forward_progress_guarantee;
1255e7ef083SPatrick Williams STDEXEC_STD_DEPRECATED
1265e7ef083SPatrick Williams inline constexpr stdexec::get_forward_progress_guarantee_t
1275e7ef083SPatrick Williams     get_forward_progress_guarantee{};
1285b5d15b3SPatrick Williams 
1295b5d15b3SPatrick Williams // [exec.recv], receivers
1305e7ef083SPatrick Williams template <class _Receiver>
1315e7ef083SPatrick Williams concept receiver /*STDEXEC_STD_DEPRECATED*/ = stdexec::receiver<_Receiver>;
1325b5d15b3SPatrick Williams 
1335e7ef083SPatrick Williams template <class _Receiver, class _Completions>
1345e7ef083SPatrick Williams concept receiver_of /*STDEXEC_STD_DEPRECATED*/ =
1355e7ef083SPatrick Williams     stdexec::receiver_of<_Receiver, _Completions>;
1365b5d15b3SPatrick Williams 
1375e7ef083SPatrick Williams using set_value_t STDEXEC_STD_DEPRECATED = stdexec::set_value_t;
1385e7ef083SPatrick Williams using set_error_t STDEXEC_STD_DEPRECATED = stdexec::set_error_t;
1395e7ef083SPatrick Williams using set_stopped_t STDEXEC_STD_DEPRECATED = stdexec::set_stopped_t;
1405e7ef083SPatrick Williams STDEXEC_STD_DEPRECATED
1415e7ef083SPatrick Williams inline constexpr stdexec::set_value_t set_value{};
1425e7ef083SPatrick Williams STDEXEC_STD_DEPRECATED
1435e7ef083SPatrick Williams inline constexpr stdexec::set_error_t set_error{};
1445e7ef083SPatrick Williams STDEXEC_STD_DEPRECATED
1455e7ef083SPatrick Williams inline constexpr stdexec::set_stopped_t set_stopped{};
1465b5d15b3SPatrick Williams 
1475b5d15b3SPatrick Williams // [exec.recv_queries], receiver queries
1485b5d15b3SPatrick Williams // using stdexec::forwarding_receiver_query_t; // BUGBUG
1495b5d15b3SPatrick Williams // using stdexec::forwarding_receiver_query; // BUGBUG
1505b5d15b3SPatrick Williams 
1515b5d15b3SPatrick Williams // [exec.op_state], operation states
1525e7ef083SPatrick Williams template <class _OpState>
1535e7ef083SPatrick Williams concept operation_state /*STDEXEC_STD_DEPRECATED*/ =
1545e7ef083SPatrick Williams     stdexec::operation_state<_OpState>;
1555b5d15b3SPatrick Williams 
1565e7ef083SPatrick Williams using start_t STDEXEC_STD_DEPRECATED = stdexec::start_t;
1575e7ef083SPatrick Williams STDEXEC_STD_DEPRECATED
1585e7ef083SPatrick Williams inline constexpr stdexec::start_t start{};
1595b5d15b3SPatrick Williams 
1605b5d15b3SPatrick Williams // [exec.snd], senders
1615932cd67SPatrick Williams template <class _Sender, class _Env = __no_env>
162e61c679bSPatrick Williams concept sender /*STDEXEC_STD_DEPRECATED*/ = stdexec::sender_in<_Sender, _Env>;
1635e7ef083SPatrick Williams 
1645e7ef083SPatrick Williams template <class _Sender, class _Receiver>
1655e7ef083SPatrick Williams concept sender_to /*STDEXEC_STD_DEPRECATED*/ =
1665e7ef083SPatrick Williams     stdexec::sender_to<_Sender, _Receiver>;
1675e7ef083SPatrick Williams 
1685932cd67SPatrick Williams template <class _Sender, class _SetSig, class _Env = __no_env>
1695e7ef083SPatrick Williams concept sender_of /*STDEXEC_STD_DEPRECATED*/ =
1705e7ef083SPatrick Williams     stdexec::sender_of<_Sender, _SetSig, _Env>;
1715b5d15b3SPatrick Williams 
1725b5d15b3SPatrick Williams // [exec.sndtraits], completion signatures
1735e7ef083SPatrick Williams using get_completion_signatures_t STDEXEC_STD_DEPRECATED =
1745e7ef083SPatrick Williams     stdexec::get_completion_signatures_t;
1755e7ef083SPatrick Williams STDEXEC_STD_DEPRECATED
1765e7ef083SPatrick Williams inline constexpr stdexec::get_completion_signatures_t
1775e7ef083SPatrick Williams     get_completion_signatures{};
1785b5d15b3SPatrick Williams 
1795932cd67SPatrick Williams template <class _Sender, class _Env = __no_env>
1805e7ef083SPatrick Williams using completion_signatures_of_t STDEXEC_STD_DEPRECATED =
1815e7ef083SPatrick Williams     stdexec::completion_signatures_of_t<_Sender, _Env>;
1825b5d15b3SPatrick Williams 
1835e7ef083SPatrick Williams template <class _Env>
1845932cd67SPatrick Williams struct __dependent_completion_signatures
1855932cd67SPatrick Williams {};
1865932cd67SPatrick Williams 
1875932cd67SPatrick Williams template <class _Env>
1885e7ef083SPatrick Williams using dependent_completion_signatures STDEXEC_STD_DEPRECATED =
1895932cd67SPatrick Williams     __dependent_completion_signatures<_Env>;
1905e7ef083SPatrick Williams 
191e61c679bSPatrick Williams template <                                                       //
192e61c679bSPatrick Williams     class _Sender,                                               //
1935932cd67SPatrick Williams     class _Env = __no_env,                                       //
194e61c679bSPatrick Williams     template <class...> class _Tuple = stdexec::__decayed_tuple, //
1955e7ef083SPatrick Williams     template <class...> class _Variant = stdexec::__variant>
1965e7ef083SPatrick Williams using value_types_of_t STDEXEC_STD_DEPRECATED =
1975e7ef083SPatrick Williams     stdexec::value_types_of_t<_Sender, _Env, _Tuple, _Variant>;
1985e7ef083SPatrick Williams 
199e61c679bSPatrick Williams template <                 //
200e61c679bSPatrick Williams     class _Sender,         //
2015932cd67SPatrick Williams     class _Env = __no_env, //
2025e7ef083SPatrick Williams     template <class...> class _Variant = stdexec::__variant>
2035e7ef083SPatrick Williams using error_types_of_t STDEXEC_STD_DEPRECATED =
2045e7ef083SPatrick Williams     stdexec::error_types_of_t<_Sender, _Env, _Variant>;
2055e7ef083SPatrick Williams 
2065932cd67SPatrick Williams template <class _Sender, class _Env = __no_env>
2075e7ef083SPatrick Williams STDEXEC_STD_DEPRECATED inline constexpr bool sends_stopped =
2085e7ef083SPatrick Williams     stdexec::sends_stopped<_Sender, _Env>;
2095b5d15b3SPatrick Williams 
2105b5d15b3SPatrick Williams // [exec.connect], the connect sender algorithm
2115e7ef083SPatrick Williams using connect_t STDEXEC_STD_DEPRECATED = stdexec::connect_t;
2125e7ef083SPatrick Williams STDEXEC_STD_DEPRECATED
2135e7ef083SPatrick Williams inline constexpr stdexec::connect_t connect{};
2145b5d15b3SPatrick Williams 
2155e7ef083SPatrick Williams template <class _Sender, class _Receiver>
2165e7ef083SPatrick Williams using connect_result_t STDEXEC_STD_DEPRECATED =
2175e7ef083SPatrick Williams     stdexec::connect_result_t<_Sender, _Receiver>;
2185b5d15b3SPatrick Williams 
2195e7ef083SPatrick Williams template <class _Tag>
2205e7ef083SPatrick Williams using get_completion_scheduler_t STDEXEC_STD_DEPRECATED =
2215e7ef083SPatrick Williams     stdexec::get_completion_scheduler_t<_Tag>;
2225b5d15b3SPatrick Williams 
2235e7ef083SPatrick Williams template <class _Tag>
2245e7ef083SPatrick Williams STDEXEC_STD_DEPRECATED inline constexpr stdexec::get_completion_scheduler_t<
2255e7ef083SPatrick Williams     _Tag>
2265e7ef083SPatrick Williams     get_completion_scheduler{};
2275b5d15b3SPatrick Williams 
2285b5d15b3SPatrick Williams // [exec.factories], sender factories
2295e7ef083SPatrick Williams using schedule_t STDEXEC_STD_DEPRECATED = stdexec::schedule_t;
2305e7ef083SPatrick Williams using transfer_just_t STDEXEC_STD_DEPRECATED = stdexec::transfer_just_t;
2315e7ef083SPatrick Williams STDEXEC_STD_DEPRECATED
2325e7ef083SPatrick Williams inline constexpr auto just = stdexec::just;
2335e7ef083SPatrick Williams STDEXEC_STD_DEPRECATED
2345e7ef083SPatrick Williams inline constexpr auto just_error = stdexec::just_error;
2355e7ef083SPatrick Williams STDEXEC_STD_DEPRECATED
2365e7ef083SPatrick Williams inline constexpr auto just_stopped = stdexec::just_stopped;
2375e7ef083SPatrick Williams STDEXEC_STD_DEPRECATED
2385e7ef083SPatrick Williams inline constexpr auto schedule = stdexec::schedule;
2395e7ef083SPatrick Williams STDEXEC_STD_DEPRECATED
2405e7ef083SPatrick Williams inline constexpr auto transfer_just = stdexec::transfer_just;
2415e7ef083SPatrick Williams STDEXEC_STD_DEPRECATED
2425e7ef083SPatrick Williams inline constexpr auto read = stdexec::read;
2435b5d15b3SPatrick Williams 
2445e7ef083SPatrick Williams template <class _Scheduler>
2455e7ef083SPatrick Williams using schedule_result_t STDEXEC_STD_DEPRECATED =
2465e7ef083SPatrick Williams     stdexec::schedule_result_t<_Scheduler>;
2475b5d15b3SPatrick Williams 
2485b5d15b3SPatrick Williams // [exec.adapt], sender adaptors
2495e7ef083SPatrick Williams template <class _Closure>
2505e7ef083SPatrick Williams using sender_adaptor_closure STDEXEC_STD_DEPRECATED =
2515e7ef083SPatrick Williams     stdexec::sender_adaptor_closure<_Closure>;
2525b5d15b3SPatrick Williams 
2535e7ef083SPatrick Williams using on_t STDEXEC_STD_DEPRECATED = stdexec::on_t;
2545e7ef083SPatrick Williams using transfer_t STDEXEC_STD_DEPRECATED = stdexec::transfer_t;
2555e7ef083SPatrick Williams using schedule_from_t STDEXEC_STD_DEPRECATED = stdexec::schedule_from_t;
2565e7ef083SPatrick Williams using then_t STDEXEC_STD_DEPRECATED = stdexec::then_t;
2575e7ef083SPatrick Williams using upon_error_t STDEXEC_STD_DEPRECATED = stdexec::upon_error_t;
2585e7ef083SPatrick Williams using upon_stopped_t STDEXEC_STD_DEPRECATED = stdexec::upon_stopped_t;
2595e7ef083SPatrick Williams using let_value_t STDEXEC_STD_DEPRECATED = stdexec::let_value_t;
2605e7ef083SPatrick Williams using let_error_t STDEXEC_STD_DEPRECATED = stdexec::let_error_t;
2615e7ef083SPatrick Williams using let_stopped_t STDEXEC_STD_DEPRECATED = stdexec::let_stopped_t;
2625e7ef083SPatrick Williams using bulk_t STDEXEC_STD_DEPRECATED = stdexec::bulk_t;
2635e7ef083SPatrick Williams using split_t STDEXEC_STD_DEPRECATED = stdexec::split_t;
2645e7ef083SPatrick Williams using when_all_t STDEXEC_STD_DEPRECATED = stdexec::when_all_t;
2655e7ef083SPatrick Williams using when_all_with_variant_t STDEXEC_STD_DEPRECATED =
2665e7ef083SPatrick Williams     stdexec::when_all_with_variant_t;
2675e7ef083SPatrick Williams using transfer_when_all_t STDEXEC_STD_DEPRECATED = stdexec::transfer_when_all_t;
2685e7ef083SPatrick Williams using transfer_when_all_with_variant_t STDEXEC_STD_DEPRECATED =
2695e7ef083SPatrick Williams     stdexec::transfer_when_all_with_variant_t;
2705e7ef083SPatrick Williams using into_variant_t STDEXEC_STD_DEPRECATED = stdexec::into_variant_t;
2715e7ef083SPatrick Williams using stopped_as_optional_t STDEXEC_STD_DEPRECATED =
2725e7ef083SPatrick Williams     stdexec::stopped_as_optional_t;
2735e7ef083SPatrick Williams using stopped_as_error_t STDEXEC_STD_DEPRECATED = stdexec::stopped_as_error_t;
2745e7ef083SPatrick Williams using ensure_started_t STDEXEC_STD_DEPRECATED = stdexec::ensure_started_t;
2755b5d15b3SPatrick Williams 
2765e7ef083SPatrick Williams STDEXEC_STD_DEPRECATED
2775e7ef083SPatrick Williams inline constexpr auto on = stdexec::on;
2785e7ef083SPatrick Williams STDEXEC_STD_DEPRECATED
2795e7ef083SPatrick Williams inline constexpr auto transfer = stdexec::transfer;
2805e7ef083SPatrick Williams STDEXEC_STD_DEPRECATED
2815e7ef083SPatrick Williams inline constexpr auto schedule_from = stdexec::schedule_from;
2825e7ef083SPatrick Williams STDEXEC_STD_DEPRECATED
2835e7ef083SPatrick Williams inline constexpr auto then = stdexec::then;
2845e7ef083SPatrick Williams STDEXEC_STD_DEPRECATED
2855e7ef083SPatrick Williams inline constexpr auto upon_error = stdexec::upon_error;
2865e7ef083SPatrick Williams STDEXEC_STD_DEPRECATED
2875e7ef083SPatrick Williams inline constexpr auto upon_stopped = stdexec::upon_stopped;
2885e7ef083SPatrick Williams STDEXEC_STD_DEPRECATED
2895e7ef083SPatrick Williams inline constexpr auto let_value = stdexec::let_value;
2905e7ef083SPatrick Williams STDEXEC_STD_DEPRECATED
2915e7ef083SPatrick Williams inline constexpr auto let_error = stdexec::let_error;
2925e7ef083SPatrick Williams STDEXEC_STD_DEPRECATED
2935e7ef083SPatrick Williams inline constexpr auto let_stopped = stdexec::let_stopped;
2945e7ef083SPatrick Williams STDEXEC_STD_DEPRECATED
2955e7ef083SPatrick Williams inline constexpr auto bulk = stdexec::bulk;
2965e7ef083SPatrick Williams STDEXEC_STD_DEPRECATED
2975e7ef083SPatrick Williams inline constexpr auto split = stdexec::split;
2985e7ef083SPatrick Williams STDEXEC_STD_DEPRECATED
2995e7ef083SPatrick Williams inline constexpr auto when_all = stdexec::when_all;
3005e7ef083SPatrick Williams STDEXEC_STD_DEPRECATED
3015e7ef083SPatrick Williams inline constexpr auto when_all_with_variant = stdexec::when_all_with_variant;
3025e7ef083SPatrick Williams STDEXEC_STD_DEPRECATED
3035e7ef083SPatrick Williams inline constexpr auto transfer_when_all = stdexec::transfer_when_all;
3045e7ef083SPatrick Williams STDEXEC_STD_DEPRECATED
3055e7ef083SPatrick Williams inline constexpr auto transfer_when_all_with_variant =
3065e7ef083SPatrick Williams     stdexec::transfer_when_all_with_variant;
3075e7ef083SPatrick Williams STDEXEC_STD_DEPRECATED
3085e7ef083SPatrick Williams inline constexpr auto into_variant = stdexec::into_variant;
3095e7ef083SPatrick Williams STDEXEC_STD_DEPRECATED
3105e7ef083SPatrick Williams inline constexpr auto stopped_as_optional = stdexec::stopped_as_optional;
3115e7ef083SPatrick Williams STDEXEC_STD_DEPRECATED
3125e7ef083SPatrick Williams inline constexpr auto stopped_as_error = stdexec::stopped_as_error;
3135e7ef083SPatrick Williams STDEXEC_STD_DEPRECATED
3145e7ef083SPatrick Williams inline constexpr auto ensure_started = stdexec::ensure_started;
3155b5d15b3SPatrick Williams 
3165b5d15b3SPatrick Williams // [exec.consumers], sender consumers
3175e7ef083SPatrick Williams using start_detached_t STDEXEC_STD_DEPRECATED = stdexec::start_detached_t;
3185e7ef083SPatrick Williams STDEXEC_STD_DEPRECATED
3195e7ef083SPatrick Williams inline constexpr auto start_detached = stdexec::start_detached;
3205b5d15b3SPatrick Williams 
3215b5d15b3SPatrick Williams // [exec.utils], sender and receiver utilities
3225b5d15b3SPatrick Williams // [exec.utils.rcvr_adptr]
3235e7ef083SPatrick Williams template <class _Derived, class _Base = stdexec::__adaptors::__not_a_receiver>
3245e7ef083SPatrick Williams using receiver_adaptor STDEXEC_STD_DEPRECATED =
3255e7ef083SPatrick Williams     stdexec::receiver_adaptor<_Derived, _Base>;
3265b5d15b3SPatrick Williams 
3275b5d15b3SPatrick Williams // [exec.utils.cmplsigs]
3285e7ef083SPatrick Williams template <class... _Sigs>
3295e7ef083SPatrick Williams using completion_signatures STDEXEC_STD_DEPRECATED =
3305e7ef083SPatrick Williams     stdexec::completion_signatures<_Sigs...>;
3315b5d15b3SPatrick Williams 
3325b5d15b3SPatrick Williams // [exec.utils.mkcmplsigs]
333e61c679bSPatrick Williams template <                                          //
334e61c679bSPatrick Williams     class _Sender,                                  //
3355932cd67SPatrick Williams     class _Env = __no_env,
336e61c679bSPatrick Williams     class _Sigs = stdexec::completion_signatures<>, //
337*36137e09SPatrick Williams     template <class...> class _SetValue =
338*36137e09SPatrick Williams         stdexec::__compl_sigs::__default_set_value, //
339*36137e09SPatrick Williams     template <class> class _SetError =
340*36137e09SPatrick Williams         stdexec::__compl_sigs::__default_set_error, //
3415e7ef083SPatrick Williams     class _SetStopped =
3425e7ef083SPatrick Williams         stdexec::completion_signatures<stdexec::set_stopped_t()>>
3435e7ef083SPatrick Williams using make_completion_signatures STDEXEC_STD_DEPRECATED =
3445e7ef083SPatrick Williams     stdexec::make_completion_signatures<_Sender, _Env, _Sigs, _SetValue,
3455e7ef083SPatrick Williams                                         _SetError, _SetStopped>;
3465b5d15b3SPatrick Williams 
3475b5d15b3SPatrick Williams // [exec.ctx], execution contexts
3485e7ef083SPatrick Williams using run_loop STDEXEC_STD_DEPRECATED = stdexec::run_loop;
3495b5d15b3SPatrick Williams 
3505b5d15b3SPatrick Williams // [exec.execute], execute
3515e7ef083SPatrick Williams using execute_t STDEXEC_STD_DEPRECATED = stdexec::execute_t;
3525e7ef083SPatrick Williams STDEXEC_STD_DEPRECATED
3535e7ef083SPatrick Williams inline constexpr auto execute = stdexec::execute;
3545b5d15b3SPatrick Williams 
355e61c679bSPatrick Williams #if !STDEXEC_STD_NO_COROUTINES_
3565b5d15b3SPatrick Williams // [exec.as_awaitable]
3575e7ef083SPatrick Williams using as_awaitable_t STDEXEC_STD_DEPRECATED = stdexec::as_awaitable_t;
3585e7ef083SPatrick Williams STDEXEC_STD_DEPRECATED
3595e7ef083SPatrick Williams inline constexpr auto as_awaitable = stdexec::as_awaitable;
3605b5d15b3SPatrick Williams 
3615b5d15b3SPatrick Williams // [exec.with_awaitable_senders]
3625e7ef083SPatrick Williams template <class _Promise>
3635e7ef083SPatrick Williams using with_awaitable_senders STDEXEC_STD_DEPRECATED =
3645e7ef083SPatrick Williams     stdexec::with_awaitable_senders<_Promise>;
365e61c679bSPatrick Williams #endif // !STDEXEC_STD_NO_COROUTINES_
3665b5d15b3SPatrick Williams } // namespace execution
3675b5d15b3SPatrick Williams 
3685b5d15b3SPatrick Williams namespace this_thread
3695b5d15b3SPatrick Williams {
3705e7ef083SPatrick Williams using execute_may_block_caller_t STDEXEC_STD_DEPRECATED =
3715e7ef083SPatrick Williams     stdexec::execute_may_block_caller_t;
3725e7ef083SPatrick Williams using sync_wait_t STDEXEC_STD_DEPRECATED = stdexec::sync_wait_t;
3735e7ef083SPatrick Williams using sync_wait_with_variant_t STDEXEC_STD_DEPRECATED =
3745e7ef083SPatrick Williams     stdexec::sync_wait_with_variant_t;
3755e7ef083SPatrick Williams 
3765e7ef083SPatrick Williams STDEXEC_STD_DEPRECATED
3775e7ef083SPatrick Williams inline constexpr auto execute_may_block_caller =
3785e7ef083SPatrick Williams     stdexec::execute_may_block_caller;
3795e7ef083SPatrick Williams STDEXEC_STD_DEPRECATED
3805e7ef083SPatrick Williams inline constexpr auto sync_wait = stdexec::sync_wait;
3815e7ef083SPatrick Williams STDEXEC_STD_DEPRECATED
3825e7ef083SPatrick Williams inline constexpr auto sync_wait_with_variant = stdexec::sync_wait_with_variant;
3835b5d15b3SPatrick Williams } // namespace this_thread
3845b5d15b3SPatrick Williams } // namespace std
385