From 96cea8dff3f408146d8b1ee4f3e82cf71611a6e8 Mon Sep 17 00:00:00 2001 From: Audrey Dutcher Date: Sun, 21 Apr 2024 13:50:33 -0700 Subject: [PATCH] oops --- src/reports/mod.rs | 1 + src/reports/parameters.rs | 34 ++++++++++++++++++++++++++++++++++ 2 files changed, 35 insertions(+) create mode 100644 src/reports/mod.rs create mode 100644 src/reports/parameters.rs diff --git a/src/reports/mod.rs b/src/reports/mod.rs new file mode 100644 index 0000000..24e32ea --- /dev/null +++ b/src/reports/mod.rs @@ -0,0 +1 @@ +pub mod parameters; diff --git a/src/reports/parameters.rs b/src/reports/parameters.rs new file mode 100644 index 0000000..5bc3d3c --- /dev/null +++ b/src/reports/parameters.rs @@ -0,0 +1,34 @@ +use std::path::PathBuf; + +use serde::{Deserialize, Serialize}; + +use crate::tracer::TracerReport; + +#[derive(Serialize, Deserialize)] +pub struct ParametersReport { + pub files: Vec, +} + +#[derive(Serialize, Deserialize)] +pub struct ParametersReportFile { + source_name: PathBuf, + used_names: Vec, +} + +pub fn run(report: &TracerReport) -> anyhow::Result { + Ok(ParametersReport { + files: report + .files + .files + .iter() + .filter_map(|rf| { + (!rf.input_names.is_empty() && !rf.output_names.is_empty()).then(|| { + ParametersReportFile { + source_name: rf.input_names.iter().next().cloned().unwrap(), + used_names: rf.output_names.iter().cloned().collect(), + } + }) + }) + .collect(), + }) +}