| 1109 | |
| 1110 | template <class _CvSequence, class _Env> |
| 1111 | constexpr void __debug_sequence_sender(_CvSequence&& __sequence, _Env const &) |
| 1112 | { |
| 1113 | if constexpr (!STDEXEC::__is_debug_env<_Env>) |
| 1114 | { |
| 1115 | if constexpr (sequence_sender_in<_CvSequence, _Env>) |
| 1116 | { |
| 1117 | using __completions_t = |
| 1118 | STDEXEC::__completion_signatures_of_t<_CvSequence, STDEXEC::__debug::__env_t<_Env>>; |
| 1119 | using __item_types_t = __item_types_of_t<_CvSequence, STDEXEC::__debug::__env_t<_Env>>; |
| 1120 | using __receiver_t = |
| 1121 | __sequence_receiver_t<_CvSequence, _Env, __item_types_t, __completions_t>; |
| 1122 | |
| 1123 | if constexpr (STDEXEC::__not_same_as<__item_types_t, __debug::__item_types>) |
| 1124 | { |
| 1125 | using __operation_t = exec::subscribe_result_t<_CvSequence, __receiver_t>; |
| 1126 | //static_assert(receiver_of<__receiver_t, __sigs_t>); |
| 1127 | if constexpr (STDEXEC::__not_same_as<__operation_t, STDEXEC::__debug::__opstate>) |
| 1128 | { |
| 1129 | if (STDEXEC::__mnever<_CvSequence>) |
| 1130 | { // never true |
| 1131 | auto __op = subscribe(static_cast<_CvSequence&&>(__sequence), __receiver_t{}); |
| 1132 | STDEXEC::start(__op); |
| 1133 | } |
| 1134 | } |
| 1135 | } |
| 1136 | } |
| 1137 | else |
| 1138 | { |
| 1139 | __diagnose_sequence_sender_concept_failure<_CvSequence, _Env>(); |
| 1140 | } |
| 1141 | } |
| 1142 | } |
| 1143 | } // namespace __debug |
| 1144 | } // namespace experimental::execution |
| 1145 |
no test coverage detected