static void Main(string[] args) { var orderReportFormattingSettings = new OrderReportFormattingSettings(args.Length > 0 && args[0].Equals("noNumberOfLines")); var cities = DatabaseModuleFunctions.LoadAllDataWithoutOrders(); var PureCompose = PureLambda.Create(() => { var generateReportForOrder = ReportingModule.GenerateReportForOrder(); var generateReportForCustomer = ReportingModule.GenerateReportForCustomer() .HonestlyInject( generateReportForOrder); var generateReportForCity = ReportingModule.GenerateReportForCity() .HonestlyInject(generateReportForCustomer); return(ReportingModule.GenerateReport() .HonestlyInject(generateReportForCity)); }); var generateReportHonest = PureCompose(); var generateReport = generateReportHonest .PartiallyInvoke( orderReportFormattingSettings, DatabaseModule.LoadOrdersForCustomer()); var report = generateReport(cities); SaveReport(report); }
public System.Collections.Immutable.ImmutableArray <Order> Invoke(Customer input) { return(DatabaseModuleFunctions.LoadOrdersForCustomer(input)); }
public System.Collections.Immutable.ImmutableArray <City> Invoke(Unit input) { return(DatabaseModuleFunctions.LoadAllDataWithoutOrders()); }