public SubscribeSwitchObserver(SubscribeSwitchParams <T> switchParams, IObserver <ActionValuePair <T> > observer)
 {
     m_switchParams = switchParams;
     m_observer     = observer;
 }
 public SubscribeSwitchOperator(IObservable <T> source, SubscribeSwitchParams <T> switchParams)
 {
     m_observable   = source;
     m_switchParams = switchParams;
 }
 public static IDisposable SubscribeSwitch <T>(this IObservable <T> source, SubscribeSwitchParams <T> onNexts, Action onCompleted)
 {
     return(SubscribeSwitch(source, onNexts, OnErrorNone, onCompleted));
 }
 public static IDisposable SubscribeSwitch <T>(this IObservable <T> source, SubscribeSwitchParams <T> onNexts, Action <Exception> onError, Action onCompleted)
 {
     return(new SubscribeSwitchOperator <T>(source, onNexts).Subscribe(avp => avp.Action(avp.Value), onError, onCompleted));
 }
 public static IDisposable SubscribeSwitch <T>(this IObservable <T> source, SubscribeSwitchParams <T> onNexts, Action <Exception> onError)
 {
     return(SubscribeSwitch(source, onNexts, onError, OnCompletedNone));
 }