MCPcopy Create free account
hub / github.com/AlexInLog/ReactivePlusPlus / main

Function main

src/examples/rpp/doxygen/interval.cpp:10–39  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

8 **/
9
10int main() // NOLINT(bugprone-exception-escape)
11{
12 //! [interval period]
13 rpp::source::interval(std::chrono::milliseconds(10), rpp::schedulers::immediate{})
14 | rpp::operators::take(3)
15 | rpp::operators::subscribe(
16 [start = rpp::schedulers::clock_type::now()](size_t v) { std::cout << "emit " << v << " duration since start " << std::chrono::duration_cast<std::chrono::milliseconds>(rpp::schedulers::clock_type::now() - start).count() << "ms\n"; },
17 rpp::utils::rethrow_error_t{},
18 []() { std::cout << "On complete\n"; });
19 // Output: Observable factory called
20 // emit 1 duration since start 0ms
21 // emit 2 duration since start 10ms
22 // emit 3 duration since start 20ms
23 // On complete
24 //! [interval period]
25
26 //! [interval initial+period]
27 rpp::source::interval(std::chrono::milliseconds(5), std::chrono::milliseconds(10), rpp::schedulers::immediate{})
28 | rpp::operators::take(3)
29 | rpp::operators::subscribe(
30 [start = rpp::schedulers::clock_type::now()](size_t v) { std::cout << "emit " << v << " duration since start " << std::chrono::duration_cast<std::chrono::milliseconds>(rpp::schedulers::clock_type::now() - start).count() << "ms\n"; },
31 rpp::utils::rethrow_error_t{},
32 []() { std::cout << "On complete\n"; });
33 // Output: Observable factory called
34 // emit 1 duration since start 5ms
35 // emit 2 duration since start 15ms
36 // emit 3 duration since start 25ms
37 // On complete
38 //! [interval initial+period]
39}

Callers

nothing calls this directly

Calls 4

intervalFunction · 0.85
takeFunction · 0.85
subscribeFunction · 0.85
nowFunction · 0.85

Tested by

no test coverage detected