MCPcopy Create free account
hub / github.com/NVIDIA/stdexec / __repeat

Method __repeat

include/exec/repeat_n.hpp:161–183  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

159 }
160
161 constexpr void __repeat() noexcept final
162 {
163 STDEXEC_ASSERT(this->__count_ > 0);
164 STDEXEC_TRY
165 {
166 if (--this->__count_ == 0)
167 {
168 __cleanup();
169 STDEXEC::set_value(std::move(this->__rcvr_));
170 }
171 else
172 {
173 STDEXEC::start(__connect());
174 }
175 }
176 STDEXEC_CATCH_ALL
177 {
178 if constexpr (!__nothrow_connect<_Child, _Receiver>)
179 {
180 STDEXEC::set_error(std::move(this->__rcvr_), std::current_exception());
181 }
182 }
183 }
184
185 _Child __child_;
186 STDEXEC::__optional<__child_op_t> __child_op_;

Callers 1

set_valueMethod · 0.45

Calls 5

set_valueFunction · 0.85
__connectClass · 0.85
constexprFunction · 0.85
startFunction · 0.70
set_errorFunction · 0.70

Tested by

no test coverage detected