public static IStream <TParsed> CrossApplyExcelRows <TParsed>(this IStream <ExcelSheetSelection> stream, string name, ExcelFileDefinition <TParsed> mapping, bool noParallelisation = false) { var valueProvider = new ExcelRowsValuesProvider <TParsed>(mapping); return(stream.CrossApply <ExcelSheetSelection, ExcelSheetSelection, TParsed, TParsed>(name, valueProvider.PushValues, i => i, (i, s) => i, noParallelisation)); }
public static IStream <TOut> CrossApplyExcelRows <TIn, TParsed, TOut>(this IStream <TIn> stream, string name, ExcelFileDefinition <TParsed> mapping, Func <TIn, ExcelSheetSelection> sheetSelection, Func <TParsed, TIn, TOut> selector, bool noParallelisation = false) { var valueProvider = new ExcelRowsValuesProvider <TParsed>(mapping); return(stream.CrossApply(name, valueProvider.PushValues, sheetSelection, selector, noParallelisation)); }