13#include <rpp/observables/details/member_overload.hpp>
14#include <rpp/schedulers/constraints.hpp>
23template<constra
int::decayed_type Type, schedulers::constra
int::scheduler TScheduler>
26template<constra
int::decayed_type Type,
typename SpecificObservable>
54 template<schedulers::constra
int::scheduler TScheduler>
55 auto observe_on(TScheduler&& scheduler)
const&
requires is_header_included<observe_on_tag, TScheduler>
57 return cast_this()->delay(schedulers::duration{0}, std::forward<TScheduler>(scheduler));
60 template<schedulers::constra
int::scheduler TScheduler>
61 auto observe_on(TScheduler&& scheduler) &&
requires is_header_included<observe_on_tag, TScheduler>
63 return move_this().delay(schedulers::duration{0}, std::forward<TScheduler>(scheduler));
67 const SpecificObservable* cast_this()
const
69 return static_cast<const SpecificObservable*
>(
this);
72 SpecificObservable&& move_this()
74 return std::move(*
static_cast<SpecificObservable*
>(
this));
auto observe_on(TScheduler &&scheduler) const &
Emit emissions of observable starting from this point via provided scheduler.
Definition: observe_on.hpp:55
Definition: member_overload.hpp:19
Definition: observe_on.hpp:24