public static IDataflow <Either <TLeft, TRightOutput> > SelectSafe <TLeft, TRightInput, TRightMedium, TRightOutput>( this IDataflow <Either <TLeft, TRightInput> > source, Func <TRightInput, Either <TLeft, TRightMedium> > mediumSelector, Func <TRightInput, TRightMedium, TRightOutput> resultSelector) { return(source.Select(item => item.SelectSafe(mediumSelector, resultSelector))); }
public static IDataflow <Either <TLeft, TRightOutput> > SelectSafe <TLeft, TRightInput, TRightOutput>( this IDataflow <Either <TLeft, TRightInput> > source, Func <TRightInput, Either <TLeft, TRightOutput> > selector) { return(source.Select(item => item.SelectSafe(selector))); }
public static IDataflow <TLeft> Lefts <TLeft, TRight>(this IDataflow <Either <TLeft, TRight> > source) { return(source.Select(item => item.GetLeftSafe())); }