ReactivePlusPlus
One more implementation of ReactiveX approach in C++ with care about performance and templates in mind
 
Loading...
Searching...
No Matches
rpp::specific_subscriber< Type, Observer > Class Template Reference

specific version of subscriber which stores type of observer used inside to prevent extra allocations More...

#include <specific_subscriber.hpp>

Inheritance diagram for rpp::specific_subscriber< Type, Observer >:
rpp::details::typed_subscriber_tag< Type > rpp::details::subscriber_base rpp::details::subscriber_tag

Public Member Functions

template<typename ... Types>
requires std::constructible_from<Observer, Types...>
 specific_subscriber (Types &&...vals)
 
template<typename ... Types>
requires std::constructible_from<Observer, Types...>
 specific_subscriber (composite_subscription sub, Types &&...vals)
 
const Observer & get_observer () const
 
void on_next (const Type &val) const
 
void on_next (Type &&val) const
 
void on_error (const std::exception_ptr &err) const
 
void on_completed () const
 
auto as_dynamic () const &
 
auto as_dynamic () &&
 
- Public Member Functions inherited from rpp::details::subscriber_base
 subscriber_base (composite_subscription &&subscription=composite_subscription{})
 
 subscriber_base (const composite_subscription &subscription)
 
const composite_subscriptionget_subscription () const
 
bool is_subscribed () const
 
void unsubscribe () const
 

Additional Inherited Members

- Protected Member Functions inherited from rpp::details::subscriber_base
void do_if_subscribed_and_unsubscribe (const auto &callable) const
 

Detailed Description

template<constraint::decayed_type Type, constraint::decayed_observer Observer>
class rpp::specific_subscriber< Type, Observer >

specific version of subscriber which stores type of observer used inside to prevent extra allocations

Template Parameters
Typetype of values expected by this subscriber
Observerobserver which was wrapped by this subscriber

The documentation for this class was generated from the following files: