public static IObserver <T> Roll <T>(this IObserverF <IObserver <T>, T> node) { return(new Observer <T>(() => node)); }
public static IObserverF <B, T> Fmap <A, B, T>(this IObserverF <A, T> node, Func <A, B> convert) { return(new ObserverF <B, T>( stopF: () => node.Stop(), sendF: message => convert(node.Send(message)))); }