summaryrefslogtreecommitdiff
path: root/Rx/v2/src/rxcpp/rx-observer.hpp
diff options
context:
space:
mode:
authorKirk Shoop <kirk.shoop@microsoft.com>2014-07-16 00:41:26 -0700
committerKirk Shoop <kirk.shoop@microsoft.com>2014-07-16 00:41:26 -0700
commitecf04618ca074a8184b3c99a95647234c2905556 (patch)
treef5738d300baaf369a32069dc7d9973d5be443897 /Rx/v2/src/rxcpp/rx-observer.hpp
parent638ec22f5a6073f15829b542577afc79e163d7cf (diff)
downloadRxCpp-ecf04618ca074a8184b3c99a95647234c2905556.tar.gz
fix bugs in all the operators that use lift
Diffstat (limited to 'Rx/v2/src/rxcpp/rx-observer.hpp')
-rw-r--r--Rx/v2/src/rxcpp/rx-observer.hpp8
1 files changed, 8 insertions, 0 deletions
diff --git a/Rx/v2/src/rxcpp/rx-observer.hpp b/Rx/v2/src/rxcpp/rx-observer.hpp
index 12d151d..42741fc 100644
--- a/Rx/v2/src/rxcpp/rx-observer.hpp
+++ b/Rx/v2/src/rxcpp/rx-observer.hpp
@@ -291,6 +291,14 @@ auto make_observer(observer<U, I> o)
-> observer<T, I> {
return observer<T, I>(std::move(o));
}
+template<class T, class Observer>
+auto make_observer(Observer ob)
+ -> typename std::enable_if<
+ !detail::is_on_next_of<T, Observer>::value &&
+ !is_observer<Observer>::value,
+ observer<T, Observer>>::type {
+ return observer<T, Observer>(std::move(ob));
+}
template<class T, class OnNext>
auto make_observer(OnNext on)
-> typename std::enable_if<