| 953 | template <class _Receiver> |
| 954 | requires __stoppable_receiver<_Receiver> |
| 955 | void __set_value_unless_stopped(_Receiver&& __rcvr) |
| 956 | { |
| 957 | using token_type = STDEXEC::stop_token_of_t<STDEXEC::env_of_t<_Receiver>>; |
| 958 | if constexpr (STDEXEC::unstoppable_token<token_type>) |
| 959 | { // NOLINT(bugprone-branch-clone) |
| 960 | STDEXEC::set_value(static_cast<_Receiver&&>(__rcvr)); |
| 961 | } |
| 962 | else if (!STDEXEC::get_stop_token(STDEXEC::get_env(__rcvr)).stop_requested()) |
| 963 | { |
| 964 | STDEXEC::set_value(static_cast<_Receiver&&>(__rcvr)); |
| 965 | } |
| 966 | else |
| 967 | { |
| 968 | STDEXEC::set_stopped(static_cast<_Receiver&&>(__rcvr)); |
| 969 | } |
| 970 | } |
| 971 | |
| 972 | //////////////////////////////////////////////////////////////////////////////// |
| 973 | #define STDEXEC_ERROR_ENABLE_SEQUENCE_SENDER_IS_FALSE \ |
no test coverage detected