From 0befcbfac5a9e8e58a239bf3e03650468d7decef1ed20c9d57eb03c07e78e46c Mon Sep 17 00:00:00 2001 From: professorwaltwood Date: Sun, 2 Aug 2026 20:13:41 +1000 Subject: [PATCH] refactor(dosages): resolved clippy warnings --- src/combo_graph.rs | 8 +++----- src/factor.rs | 6 +++--- src/lib.rs | 4 ++-- 3 files changed, 8 insertions(+), 10 deletions(-) diff --git a/src/combo_graph.rs b/src/combo_graph.rs index d57f39e..df487cb 100644 --- a/src/combo_graph.rs +++ b/src/combo_graph.rs @@ -62,7 +62,7 @@ impl ComboGraph { .map(|(pos, combo)| (max(self.target.abs_diff(*pos), 1), combo.weight(), pos)) .min()?; - self.nodes.get(&closest.2) + self.nodes.get(closest.2) } /// Visit a combo and calculate its position and weight @@ -110,8 +110,7 @@ impl ComboGraph { let combo = self.nodes.get(&self.target)?; Some( (0..self.values.len()) - .map(|i| vec![self.values[i]; combo[i] as usize]) - .flatten() + .flat_map(|i| vec![self.values[i]; combo[i] as usize]) .collect(), ) } @@ -120,8 +119,7 @@ impl ComboGraph { let combo = self.closest_node_target()?; Some( (0..self.values.len()) - .map(|i| vec![self.values[i]; combo[i] as usize]) - .flatten() + .flat_map(|i| vec![self.values[i]; combo[i] as usize]) .collect(), ) } diff --git a/src/factor.rs b/src/factor.rs index 3a8ca4c..a0b2459 100644 --- a/src/factor.rs +++ b/src/factor.rs @@ -12,7 +12,7 @@ fn gcf(mut a: u32, mut b: u32) -> u32 { } /// Calculate gcf of vector -fn gcfv(v: &Vec) -> u32 { +fn gcfv(v: &[u32]) -> u32 { let mut i = 1; let mut cgcf = v[0]; // start with first item let mut a; @@ -33,13 +33,13 @@ fn gcfv(v: &Vec) -> u32 { cgcf } -pub fn factorise(strengths: &mut Vec) -> u32 { +pub fn factorise(strengths: &mut [u32]) -> u32 { let factor = gcfv(strengths); if factor == 1 { return factor; } for s in strengths.iter_mut() { - *s = *s / factor; + *s /= factor; } factor } diff --git a/src/lib.rs b/src/lib.rs index 859c3fa..f68162e 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -16,7 +16,7 @@ use crate::factor::factorise; /// ``` /// pub fn calculate_combo(mut target: u32, mut strengths: Vec) -> Vec { - if strengths.len() == 0 { + if strengths.is_empty() { return vec![]; } @@ -24,7 +24,7 @@ pub fn calculate_combo(mut target: u32, mut strengths: Vec) -> Vec { let mut rounded = false; if factor != 1 { - if target % factor != 0 { + if target.is_multiple_of(factor) { let f_target: f64 = target as f64 / factor as f64; target = f_target.round() as u32; rounded = true;