RxCpp
The Reactive Extensions for Native (RxCpp) is a library for composing asynchronous and event-based programs using observable sequences and LINQ-style query operators in both C and C++.
|
Classes | |
struct | is_operator |
struct | operator_base |
struct | tag_operator |
Functions | |
template<class... AN> | |
auto | all (AN &&... an) -> operator_factory< all_tag, AN... > |
template<class... AN> | |
auto | is_empty (AN &&... an) -> operator_factory< is_empty_tag, AN... > |
Returns an Observable that emits true if the source Observable is empty, otherwise false. More... | |
template<class... AN> | |
auto | amb (AN &&... an) -> operator_factory< amb_tag, AN... > |
template<class... AN> | |
auto | any (AN &&... an) -> operator_factory< any_tag, AN... > |
template<class... AN> | |
auto | exists (AN &&... an) -> operator_factory< exists_tag, AN... > |
Returns an Observable that emits true if any item emitted by the source Observable satisfies a specified condition, otherwise false. Emits false if the source Observable terminates without emitting any item. More... | |
template<class... AN> | |
auto | contains (AN &&... an) -> operator_factory< contains_tag, AN... > |
Returns an Observable that emits true if the source Observable emitted a specified item, otherwise false. Emits false if the source Observable terminates without emitting any item. More... | |
template<class... AN> | |
auto | buffer (AN &&... an) -> operator_factory< buffer_count_tag, AN... > |
template<class... AN> | |
auto | buffer_with_time (AN &&... an) -> operator_factory< buffer_with_time_tag, AN... > |
template<class... AN> | |
auto | buffer_with_time_or_count (AN &&... an) -> operator_factory< buffer_with_time_or_count_tag, AN... > |
template<class... AN> | |
auto | combine_latest (AN &&... an) -> operator_factory< combine_latest_tag, AN... > |
template<class... AN> | |
auto | concat (AN &&... an) -> operator_factory< concat_tag, AN... > |
template<class... AN> | |
auto | concat_map (AN &&... an) -> operator_factory< concat_map_tag, AN... > |
template<class... AN> | |
auto | concat_transform (AN &&... an) -> operator_factory< concat_map_tag, AN... > |
template<class... AN> | |
auto | connect_forever (AN &&... an) -> operator_factory< connect_forever_tag, AN... > |
template<class... AN> | |
auto | debounce (AN &&... an) -> operator_factory< debounce_tag, AN... > |
template<class... AN> | |
auto | delay (AN &&... an) -> operator_factory< delay_tag, AN... > |
template<class... AN> | |
auto | distinct (AN &&... an) -> operator_factory< distinct_tag, AN... > |
template<class... AN> | |
auto | distinct_until_changed (AN &&... an) -> operator_factory< distinct_until_changed_tag, AN... > |
template<class... AN> | |
auto | element_at (AN &&... an) -> operator_factory< element_at_tag, AN... > |
template<class... AN> | |
auto | filter (AN &&... an) -> operator_factory< filter_tag, AN... > |
template<class... AN> | |
auto | finally (AN &&... an) -> operator_factory< final ly_tag |
template<class... AN> | |
auto | flat_map (AN &&... an) -> operator_factory< flat_map_tag, AN... > |
template<class... AN> | |
auto | merge_transform (AN &&... an) -> operator_factory< flat_map_tag, AN... > |
template<class... AN> | |
auto | group_by (AN &&... an) -> operator_factory< group_by_tag, AN... > |
template<class... AN> | |
auto | ignore_elements (AN &&... an) -> operator_factory< ignore_elements_tag, AN... > |
template<class ResultType , class Operator > | |
auto | lift (Operator &&op) -> detail::lift_factory< ResultType, Operator > |
template<class... AN> | |
auto | map (AN &&... an) -> operator_factory< map_tag, AN... > |
template<class... AN> | |
auto | transform (AN &&... an) -> operator_factory< map_tag, AN... > |
template<class... AN> | |
auto | merge (AN &&... an) -> operator_factory< merge_tag, AN... > |
template<class... AN> | |
auto | merge_delay_error (AN &&... an) -> operator_factory< merge_delay_error_tag, AN... > |
template<class... AN> | |
auto | multicast (AN &&... an) -> operator_factory< multicast_tag, AN... > |
template<class... AN> | |
auto | observe_on (AN &&... an) -> operator_factory< observe_on_tag, AN... > |
template<class... AN> | |
auto | on_error_resume_next (AN &&... an) -> operator_factory< on_error_resume_next_tag, AN... > |
template<class... AN> | |
auto | switch_on_error (AN &&... an) -> operator_factory< on_error_resume_next_tag, AN... > |
template<class... AN> | |
auto | pairwise (AN &&... an) -> operator_factory< pairwise_tag, AN... > |
template<class... AN> | |
auto | publish (AN &&... an) -> operator_factory< publish_tag, AN... > |
template<class... AN> | |
auto | publish_synchronized (AN &&... an) -> operator_factory< publish_synchronized_tag, AN... > |
Turn a cold observable hot and allow connections to the source to be independent of subscriptions. More... | |
template<class... AN> | |
auto | reduce (AN &&... an) -> operator_factory< reduce_tag, AN... > |
template<class... AN> | |
auto | accumulate (AN &&... an) -> operator_factory< reduce_tag, AN... > |
auto | first () -> operator_factory< first_tag > |
For each item from this observable reduce it by sending only the first item. More... | |
auto | last () -> operator_factory< last_tag > |
For each item from this observable reduce it by sending only the last item. More... | |
auto | count () -> operator_factory< reduce_tag, int, rxu::count, rxu::detail::take_at< 0 >> |
For each item from this observable reduce it by incrementing a count. More... | |
auto | average () -> operator_factory< average_tag > |
For each item from this observable reduce it by adding to the previous values and then dividing by the number of items at the end. More... | |
auto | sum () -> operator_factory< sum_tag > |
For each item from this observable reduce it by adding to the previous items. More... | |
auto | min () -> operator_factory< min_tag > |
For each item from this observable reduce it by taking the min value of the previous items. More... | |
auto | max () -> operator_factory< max_tag > |
For each item from this observable reduce it by taking the max value of the previous items. More... | |
template<class... AN> | |
auto | ref_count (AN &&... an) -> operator_factory< ref_count_tag, AN... > |
template<class... AN> | |
auto | repeat (AN &&... an) -> operator_factory< repeat_tag, AN... > |
template<class... AN> | |
auto | replay (AN &&... an) -> operator_factory< replay_tag, AN... > |
template<class... AN> | |
auto | retry (AN &&... an) -> operator_factory< retry_tag, AN... > |
template<class... AN> | |
auto | sample_with_time (AN &&... an) -> operator_factory< sample_with_time_tag, AN... > |
template<class... AN> | |
auto | scan (AN &&... an) -> operator_factory< scan_tag, AN... > |
template<class... AN> | |
auto | sequence_equal (AN &&... an) -> operator_factory< sequence_equal_tag, AN... > |
template<class... AN> | |
auto | skip (AN &&... an) -> operator_factory< skip_tag, AN... > |
template<class... AN> | |
auto | skip_last (AN &&... an) -> operator_factory< skip_last_tag, AN... > |
template<class... AN> | |
auto | skip_until (AN &&... an) -> operator_factory< skip_until_tag, AN... > |
template<class... AN> | |
auto | skip_while (AN &&... an) -> operator_factory< skip_while_tag, AN... > |
template<class... AN> | |
auto | start_with (AN &&... an) -> operator_factory< start_with_tag, AN... > |
template<class T , class... ArgN> | |
auto | subscribe (ArgN &&... an) -> detail::subscribe_factory< decltype(make_subscriber< T >(std::forward< ArgN >(an)...))> |
auto | as_dynamic () -> detail::dynamic_factory |
auto | as_blocking () -> detail::blocking_factory |
template<class... AN> | |
auto | subscribe_on (AN &&... an) -> operator_factory< subscribe_on_tag, AN... > |
template<class... AN> | |
auto | switch_if_empty (AN &&... an) -> operator_factory< switch_if_empty_tag, AN... > |
template<class... AN> | |
auto | default_if_empty (AN &&... an) -> operator_factory< default_if_empty_tag, AN... > |
If the source Observable terminates without emitting any items, emits a default item and completes. More... | |
template<class... AN> | |
auto | switch_on_next (AN &&... an) -> operator_factory< switch_on_next_tag, AN... > |
template<class... AN> | |
auto | take (AN &&... an) -> operator_factory< take_tag, AN... > |
template<class... AN> | |
auto | take_last (AN &&... an) -> operator_factory< take_last_tag, AN... > |
template<class... AN> | |
auto | take_until (AN &&... an) -> operator_factory< take_until_tag, AN... > |
template<class... AN> | |
auto | take_while (AN &&... an) -> operator_factory< take_while_tag, AN... > |
template<class... AN> | |
auto | tap (AN &&... an) -> operator_factory< tap_tag, AN... > |
template<class... AN> | |
auto | time_interval (AN &&... an) -> operator_factory< time_interval_tag, AN... > |
template<class... AN> | |
auto | timeout (AN &&... an) -> operator_factory< timeout_tag, AN... > |
template<class... AN> | |
auto | timestamp (AN &&... an) -> operator_factory< timestamp_tag, AN... > |
template<class... AN> | |
auto | window (AN &&... an) -> operator_factory< window_tag, AN... > |
template<class... AN> | |
auto | window_with_time (AN &&... an) -> operator_factory< window_with_time_tag, AN... > |
template<class... AN> | |
auto | window_with_time_or_count (AN &&... an) -> operator_factory< window_with_time_or_count_tag, AN... > |
template<class... AN> | |
auto | window_toggle (AN &&... an) -> operator_factory< window_toggle_tag, AN... > |
template<class... AN> | |
auto | with_latest_from (AN &&... an) -> operator_factory< with_latest_from_tag, AN... > |
template<class... AN> | |
auto | zip (AN &&... an) -> operator_factory< zip_tag, AN... > |
Variables | |
auto | AN |
auto rxcpp::operators::accumulate | ( | AN &&... | an | ) | -> operator_factory<reduce_tag, AN...> |
auto rxcpp::operators::all | ( | AN &&... | an | ) | -> operator_factory<all_tag, AN...> |
auto rxcpp::operators::amb | ( | AN &&... | an | ) | -> operator_factory<amb_tag, AN...> |
auto rxcpp::operators::any | ( | AN &&... | an | ) | -> operator_factory<any_tag, AN...> |
|
inline |
Return a new observable that contains the blocking methods for this observable.
|
inline |
Return a new observable that performs type-forgetting conversion of this observable.
|
inline |
For each item from this observable reduce it by adding to the previous values and then dividing by the number of items at the end.
auto rxcpp::operators::buffer | ( | AN &&... | an | ) | -> operator_factory<buffer_count_tag, AN...> |
auto rxcpp::operators::buffer_with_time | ( | AN &&... | an | ) | -> operator_factory<buffer_with_time_tag, AN...> |
auto rxcpp::operators::buffer_with_time_or_count | ( | AN &&... | an | ) | -> operator_factory<buffer_with_time_or_count_tag, AN...> |
auto rxcpp::operators::combine_latest | ( | AN &&... | an | ) | -> operator_factory<combine_latest_tag, AN...> |
auto rxcpp::operators::concat | ( | AN &&... | an | ) | -> operator_factory<concat_tag, AN...> |
auto rxcpp::operators::concat_map | ( | AN &&... | an | ) | -> operator_factory<concat_map_tag, AN...> |
auto rxcpp::operators::concat_transform | ( | AN &&... | an | ) | -> operator_factory<concat_map_tag, AN...> |
auto rxcpp::operators::connect_forever | ( | AN &&... | an | ) | -> operator_factory<connect_forever_tag, AN...> |
auto rxcpp::operators::contains | ( | AN &&... | an | ) | -> operator_factory<contains_tag, AN...> |
Returns an Observable that emits true if the source Observable emitted a specified item, otherwise false. Emits false if the source Observable terminates without emitting any item.
T | the type of the item to search for. |
value | the item to search for. |
|
inline |
For each item from this observable reduce it by incrementing a count.
auto rxcpp::operators::debounce | ( | AN &&... | an | ) | -> operator_factory<debounce_tag, AN...> |
auto rxcpp::operators::default_if_empty | ( | AN &&... | an | ) | -> operator_factory<default_if_empty_tag, AN...> |
If the source Observable terminates without emitting any items, emits a default item and completes.
Value | the type of the value to emit. |
v | the default value to emit. |
auto rxcpp::operators::delay | ( | AN &&... | an | ) | -> operator_factory<delay_tag, AN...> |
auto rxcpp::operators::distinct | ( | AN &&... | an | ) | -> operator_factory<distinct_tag, AN...> |
auto rxcpp::operators::distinct_until_changed | ( | AN &&... | an | ) | -> operator_factory<distinct_until_changed_tag, AN...> |
auto rxcpp::operators::element_at | ( | AN &&... | an | ) | -> operator_factory<element_at_tag, AN...> |
auto rxcpp::operators::exists | ( | AN &&... | an | ) | -> operator_factory<exists_tag, AN...> |
Returns an Observable that emits true if any item emitted by the source Observable satisfies a specified condition, otherwise false. Emits false if the source Observable terminates without emitting any item.
Predicate | the type of the test function. |
p | the test function to test items emitted by the source Observable. |
auto rxcpp::operators::filter | ( | AN &&... | an | ) | -> operator_factory<filter_tag, AN...> |
|
final |
|
inline |
For each item from this observable reduce it by sending only the first item.
auto rxcpp::operators::flat_map | ( | AN &&... | an | ) | -> operator_factory<flat_map_tag, AN...> |
auto rxcpp::operators::group_by | ( | AN &&... | an | ) | -> operator_factory<group_by_tag, AN...> |
auto rxcpp::operators::ignore_elements | ( | AN &&... | an | ) | -> operator_factory<ignore_elements_tag, AN...> |
auto rxcpp::operators::is_empty | ( | AN &&... | an | ) | -> operator_factory<is_empty_tag, AN...> |
Returns an Observable that emits true if the source Observable is empty, otherwise false.
|
inline |
For each item from this observable reduce it by sending only the last item.
auto rxcpp::operators::lift | ( | Operator && | op | ) | -> detail::lift_factory<ResultType, Operator> |
auto rxcpp::operators::map | ( | AN &&... | an | ) | -> operator_factory<map_tag, AN...> |
|
inline |
For each item from this observable reduce it by taking the max value of the previous items.
auto rxcpp::operators::merge | ( | AN &&... | an | ) | -> operator_factory<merge_tag, AN...> |
auto rxcpp::operators::merge_delay_error | ( | AN &&... | an | ) | -> operator_factory<merge_delay_error_tag, AN...> |
auto rxcpp::operators::merge_transform | ( | AN &&... | an | ) | -> operator_factory<flat_map_tag, AN...> |
|
inline |
For each item from this observable reduce it by taking the min value of the previous items.
auto rxcpp::operators::multicast | ( | AN &&... | an | ) | -> operator_factory<multicast_tag, AN...> |
auto rxcpp::operators::observe_on | ( | AN &&... | an | ) | -> operator_factory<observe_on_tag, AN...> |
auto rxcpp::operators::on_error_resume_next | ( | AN &&... | an | ) | -> operator_factory<on_error_resume_next_tag, AN...> |
auto rxcpp::operators::pairwise | ( | AN &&... | an | ) | -> operator_factory<pairwise_tag, AN...> |
auto rxcpp::operators::publish | ( | AN &&... | an | ) | -> operator_factory<publish_tag, AN...> |
auto rxcpp::operators::publish_synchronized | ( | AN &&... | an | ) | -> operator_factory<publish_synchronized_tag, AN...> |
Turn a cold observable hot and allow connections to the source to be independent of subscriptions.
Coordination | the type of the scheduler. |
cn | a scheduler all values are queued and delivered on. |
cs | the subscription to control lifetime (optional). |
auto rxcpp::operators::reduce | ( | AN &&... | an | ) | -> operator_factory<reduce_tag, AN...> |
auto rxcpp::operators::ref_count | ( | AN &&... | an | ) | -> operator_factory<ref_count_tag, AN...> |
auto rxcpp::operators::repeat | ( | AN &&... | an | ) | -> operator_factory<repeat_tag, AN...> |
auto rxcpp::operators::replay | ( | AN &&... | an | ) | -> operator_factory<replay_tag, AN...> |
auto rxcpp::operators::retry | ( | AN &&... | an | ) | -> operator_factory<retry_tag, AN...> |
auto rxcpp::operators::sample_with_time | ( | AN &&... | an | ) | -> operator_factory<sample_with_time_tag, AN...> |
auto rxcpp::operators::scan | ( | AN &&... | an | ) | -> operator_factory<scan_tag, AN...> |
auto rxcpp::operators::sequence_equal | ( | AN &&... | an | ) | -> operator_factory<sequence_equal_tag, AN...> |
auto rxcpp::operators::skip | ( | AN &&... | an | ) | -> operator_factory<skip_tag, AN...> |
auto rxcpp::operators::skip_last | ( | AN &&... | an | ) | -> operator_factory<skip_last_tag, AN...> |
auto rxcpp::operators::skip_until | ( | AN &&... | an | ) | -> operator_factory<skip_until_tag, AN...> |
auto rxcpp::operators::skip_while | ( | AN &&... | an | ) | -> operator_factory<skip_while_tag, AN...> |
auto rxcpp::operators::start_with | ( | AN &&... | an | ) | -> operator_factory<start_with_tag, AN...> |
auto rxcpp::operators::subscribe | ( | ArgN &&... | an | ) | -> detail::subscribe_factory<decltype (make_subscriber<T>(std::forward<ArgN>(an)...))> |
auto rxcpp::operators::subscribe_on | ( | AN &&... | an | ) | -> operator_factory<subscribe_on_tag, AN...> |
|
inline |
For each item from this observable reduce it by adding to the previous items.
auto rxcpp::operators::switch_if_empty | ( | AN &&... | an | ) | -> operator_factory<switch_if_empty_tag, AN...> |
auto rxcpp::operators::switch_on_error | ( | AN &&... | an | ) | -> operator_factory<on_error_resume_next_tag, AN...> |
auto rxcpp::operators::switch_on_next | ( | AN &&... | an | ) | -> operator_factory<switch_on_next_tag, AN...> |
auto rxcpp::operators::take | ( | AN &&... | an | ) | -> operator_factory<take_tag, AN...> |
auto rxcpp::operators::take_last | ( | AN &&... | an | ) | -> operator_factory<take_last_tag, AN...> |
auto rxcpp::operators::take_until | ( | AN &&... | an | ) | -> operator_factory<take_until_tag, AN...> |
auto rxcpp::operators::take_while | ( | AN &&... | an | ) | -> operator_factory<take_while_tag, AN...> |
auto rxcpp::operators::tap | ( | AN &&... | an | ) | -> operator_factory<tap_tag, AN...> |
auto rxcpp::operators::time_interval | ( | AN &&... | an | ) | -> operator_factory<time_interval_tag, AN...> |
auto rxcpp::operators::timeout | ( | AN &&... | an | ) | -> operator_factory<timeout_tag, AN...> |
auto rxcpp::operators::timestamp | ( | AN &&... | an | ) | -> operator_factory<timestamp_tag, AN...> |
auto rxcpp::operators::transform | ( | AN &&... | an | ) | -> operator_factory<map_tag, AN...> |
auto rxcpp::operators::window | ( | AN &&... | an | ) | -> operator_factory<window_tag, AN...> |
auto rxcpp::operators::window_toggle | ( | AN &&... | an | ) | -> operator_factory<window_toggle_tag, AN...> |
auto rxcpp::operators::window_with_time | ( | AN &&... | an | ) | -> operator_factory<window_with_time_tag, AN...> |
auto rxcpp::operators::window_with_time_or_count | ( | AN &&... | an | ) | -> operator_factory<window_with_time_or_count_tag, AN...> |
auto rxcpp::operators::with_latest_from | ( | AN &&... | an | ) | -> operator_factory<with_latest_from_tag, AN...> |
auto rxcpp::operators::zip | ( | AN &&... | an | ) | -> operator_factory<zip_tag, AN...> |
auto rxcpp::operators::AN |