Push-based stream source. Operators return a new (caller-owned) Observable; subscribe() returns a Subscription used to cancel. 更多...
#include <Rx.h>
Public 成员函数 | |
| virtual | ~Observable ()=default |
| virtual Subscription | subscribe (Observer< T > obs)=0 |
| Subscribes with a full observer; returns a cancel handle. | |
| Subscription | subscribe (typename Observer< T >::NextFn next) |
| Subscribes with a value callback only. | |
| Subscription | subscribe (typename Observer< T >::NextFn next, typename Observer< T >::ErrorFn error, typename Observer< T >::CompletedFn completed) |
| Subscribes with value/error/completed callbacks. | |
| Observable< T > * | filter (std::function< bool(const T &)> pred) |
| Passes values through only when pred(v) is true. | |
| template<typename R > | |
| Observable< R > * | map (std::function< R(const T &)> fn) |
| Transforms each value with fn. | |
| Observable< T > * | take (int n) |
| Emits at most the first n values, then completes. | |
| Observable< T > * | skip (int n) |
| Drops the first n values. | |
| Observable< T > * | first () |
| Emits only the first value, then completes. | |
| Observable< T > * | takeUntil (Observable< T > *other) |
Stops the stream when other emits or completes. | |
| Observable< T > * | distinctUntilChanged () |
| Suppresses consecutive duplicate values (uses operator==). | |
详细描述
class eve::rx::Observable< T >
Push-based stream source. Operators return a new (caller-owned) Observable; subscribe() returns a Subscription used to cancel.
构造及析构函数说明
◆ ~Observable()
|
virtualdefault |
成员函数说明
◆ distinctUntilChanged()
| Observable< T > * eve::rx::Observable< T >::distinctUntilChanged | ( | ) |
Suppresses consecutive duplicate values (uses operator==).
引用了 eve::rx::Observer< T >::completed(), eve::rx::Observer< T >::error(), eve::rx::Observer< T >::next(), eve::rx::Observer< T >::onCompleted, eve::rx::Observer< T >::onError, eve::rx::Observer< T >::onNext , 以及 v.
◆ filter()
| Observable< T > * eve::rx::Observable< T >::filter | ( | std::function< bool(const T &)> | pred | ) |
Passes values through only when pred(v) is true.
引用了 eve::rx::Observer< T >::completed(), eve::rx::Observer< T >::error(), eve::rx::Observer< T >::next(), eve::rx::Observer< T >::onCompleted, eve::rx::Observer< T >::onError, eve::rx::Observer< T >::onNext , 以及 v.
◆ first()
| Observable< T > * eve::rx::Observable< T >::first | ( | ) |
Emits only the first value, then completes.
引用了 eve::rx::Observer< T >::completed(), eve::rx::Observer< T >::error(), eve::rx::Observer< T >::next(), eve::rx::Observer< T >::onCompleted, eve::rx::Observer< T >::onError, eve::rx::Observer< T >::onNext , 以及 v.
◆ map()
| Observable< R > * eve::rx::Observable< T >::map | ( | std::function< R(const T &)> | fn | ) |
Transforms each value with fn.
引用了 eve::rx::Observer< T >::completed(), eve::rx::Observer< T >::error(), fn, eve::rx::Observer< T >::next(), eve::rx::Observer< T >::onCompleted, eve::rx::Observer< T >::onError, eve::rx::Observer< T >::onNext , 以及 v.
◆ skip()
| Observable< T > * eve::rx::Observable< T >::skip | ( | int | n | ) |
Drops the first n values.
引用了 eve::rx::Observer< T >::completed(), eve::rx::Observer< T >::error(), n, eve::rx::Observer< T >::next(), eve::rx::Observer< T >::onCompleted, eve::rx::Observer< T >::onError, eve::rx::Observer< T >::onNext , 以及 v.
◆ subscribe() [1/3]
|
pure virtual |
Subscribes with a full observer; returns a cancel handle.
在 eve::rx::AnonymousObservable< T >, eve::rx::Subject< T >, eve::rx::BehaviorSubject< T > , 以及 eve::rx::ReplaySubject< T > 内被实现.
被这些函数引用 eve::rx::Observable< T >::subscribe(), eve::rx::Observable< T >::subscribe() , 以及 eve::rx::Observable< T >::takeUntil().
◆ subscribe() [2/3]
|
inline |
Subscribes with a value callback only.
引用了 eve::rx::Observer< T >::onNext , 以及 eve::rx::Observable< T >::subscribe().
◆ subscribe() [3/3]
|
inline |
Subscribes with value/error/completed callbacks.
引用了 error, eve::rx::Observer< T >::onCompleted, eve::rx::Observer< T >::onError, eve::rx::Observer< T >::onNext , 以及 eve::rx::Observable< T >::subscribe().
◆ take()
| Observable< T > * eve::rx::Observable< T >::take | ( | int | n | ) |
Emits at most the first n values, then completes.
引用了 eve::rx::Observer< T >::completed(), eve::rx::Observer< T >::error(), n, eve::rx::Observer< T >::next(), eve::rx::Observer< T >::onCompleted, eve::rx::Observer< T >::onError, eve::rx::Observer< T >::onNext , 以及 v.
◆ takeUntil()
| Observable< T > * eve::rx::Observable< T >::takeUntil | ( | Observable< T > * | other | ) |
Stops the stream when other emits or completes.
引用了 eve::rx::Observer< T >::completed(), eve::rx::Observer< T >::error(), eve::rx::Observer< T >::next(), eve::rx::Observer< T >::onCompleted, eve::rx::Observer< T >::onError, eve::rx::Observer< T >::onNext, eve::rx::Observable< T >::subscribe() , 以及 v.
该类的文档由以下文件生成:
- src/modules/rx/Rx.h