| 23 | |
| 24 | template<rpp::constraint::observable TObservable> |
| 25 | auto operator()(TObservable&& observable) const & |
| 26 | { |
| 27 | static_assert(std::invocable<Fn, rpp::utils::extract_observable_type_t<TObservable>> && rpp::constraint::observable<std::invoke_result_t<Fn, rpp::utils::extract_observable_type_t<TObservable>>>, "fn should return observable"); |
| 28 | return std::forward<TObservable>(observable) |
| 29 | | rpp::ops::map(m_fn) |
| 30 | | rpp::ops::merge(); |
| 31 | } |
| 32 | |
| 33 | template<rpp::constraint::observable TObservable> |
| 34 | auto operator()(TObservable&& observable) && |