Reduce repetition

This commit is contained in:
philipp authored and David Peter committed 2019-02-25 07:04:40 +01:00
1 parent f3a20c2c5f
commit fdc92cb204
1 file changed
+10 -11
+10 -11
View File
@@ -216,17 +216,16 @@ fn build_hyperfine_options(matches: &ArgMatches) -> Result<HyperfineOptions, Opt
/// in the given ArgMatches /// in the given ArgMatches
fn build_export_manager(matches: &ArgMatches) -> ExportManager { fn build_export_manager(matches: &ArgMatches) -> ExportManager {
let mut export_manager = ExportManager::new(); let mut export_manager = ExportManager::new();
if let Some(filename) = matches.value_of("export-asciidoc") { {
export_manager.add_exporter(ExportType::Asciidoc, filename); let mut add_exporter = |flag, exporttype| {
} if let Some(filename) = matches.value_of(flag) {
if let Some(filename) = matches.value_of("export-json") { export_manager.add_exporter(exporttype, filename);
export_manager.add_exporter(ExportType::Json, filename); }
} };
if let Some(filename) = matches.value_of("export-csv") { add_exporter("export-asciidoc", ExportType::Asciidoc);
export_manager.add_exporter(ExportType::Csv, filename); add_exporter("export-json", ExportType::Json);
} add_exporter("export-csv", ExportType::Csv);
if let Some(filename) = matches.value_of("export-markdown") { add_exporter("export-markdown", ExportType::Markdown);
export_manager.add_exporter(ExportType::Markdown, filename);
} }
export_manager export_manager
} }