| 414 | } |
| 415 | |
| 416 | constexpr void __detach() noexcept |
| 417 | { |
| 418 | // increments the use count: |
| 419 | auto __started_ptr = __started_ref_.load(); |
| 420 | // If the use count is 3 (one for *this, one for __started_ref_, and one for |
| 421 | // __started_ptr), then we are the final "consumer". Ask the operation to stop |
| 422 | // early. |
| 423 | if (3 == __started_ptr.use_count()) |
| 424 | { |
| 425 | this->__stop_source_.request_stop(); |
| 426 | } |
| 427 | } |
| 428 | |
| 429 | constexpr virtual void __set_completed() noexcept final |
| 430 | { |
nothing calls this directly
no test coverage detected