/// <summary> /// Transform the input stream into a similar stream but with a different structure and calculation using a processor /// </summary> /// <param name="stream">Input stream</param> /// <param name="name">Name of the operation</param> /// <param name="processor">Processor that will handle the transformation</param> /// <param name="excludeNull">Any output that is null won't be issued</param> /// <typeparam name="TIn">Input type</typeparam> /// <typeparam name="TOut">Output type</typeparam> /// <returns>Output stream</returns> public static IStream <TOut> Select <TIn, TOut>(this IStream <TIn> stream, string name, ISelectProcessor <TIn, TOut> processor, bool excludeNull = false) { return(new SelectStreamNode <TIn, TOut>(name, new SelectArgs <TIn, TOut> { Stream = stream, Processor = processor, ExcludeNull = excludeNull }).Output); }
/// <summary> /// Transform the input stream into a similar stream but with a different structure and calculation using a processor /// </summary> /// <param name="stream">Input stream</param> /// <param name="name">Name of the operation</param> /// <param name="processor">Processor that will handle the transformation</param> /// <typeparam name="TIn">Input type</typeparam> /// <typeparam name="TOut">Output type</typeparam> /// <returns>Output stream</returns> public static IStream <TOut> Select <TIn, TOut>(this IStream <TIn> stream, string name, ISelectProcessor <TIn, TOut> processor, bool withNoDispose = false) { return(new SelectStreamNode <TIn, TOut>(name, new SelectArgs <TIn, TOut> { Stream = stream, Processor = processor, WithNoDispose = withNoDispose }).Output); }
public static ISingleStream <Correlated <TOut> > Select <TIn, TOut>(this ISingleStream <Correlated <TIn> > stream, string name, ISelectProcessor <Correlated <TIn>, Correlated <TOut> > processor, bool withNoDispose = false) { return(new SelectSingleStreamNode <Correlated <TIn>, Correlated <TOut> >(name, new SelectSingleArgs <Correlated <TIn>, Correlated <TOut> > { Stream = stream, Processor = processor, WithNoDispose = withNoDispose }).Output); }