public static Enumerate <T> Where <T>(this Enumerate <T> source, Func <T, bool> filter) { return(source.SelectMany(t => filter(t) ? Return(t) : Empty <T>())); }
public static Enumerate <TResult> Select <T, TResult>(this Enumerate <T> source, Func <T, TResult> selector) { return(source.SelectMany(a => Return(selector(a)))); }