From be1542bbe80f5175171f572cd5e5b563b9e0d8dd Mon Sep 17 00:00:00 2001 From: structix Date: Sun, 29 Dec 2024 00:39:44 +0100 Subject: [PATCH] Remove clones --- src/lib.rs | 1 + src/mensa.rs | 45 +++++++++++++++++++++------------------------ 2 files changed, 22 insertions(+), 24 deletions(-) create mode 100644 src/lib.rs diff --git a/src/lib.rs b/src/lib.rs new file mode 100644 index 0000000..994d80a --- /dev/null +++ b/src/lib.rs @@ -0,0 +1 @@ +mod mensa; diff --git a/src/mensa.rs b/src/mensa.rs index bbf5e29..b6fbfd9 100644 --- a/src/mensa.rs +++ b/src/mensa.rs @@ -75,14 +75,13 @@ impl Mealplan for Mensa { fn today(&self) -> (String, Vec<&Menu>) { let local = format!("{}", Local::now().format("%Y-%m-%d")); - ( - local.clone(), - self.canteen - .menus - .iter() - .filter(|&x| x.menu_date == local) - .collect(), - ) + let menus = self + .canteen + .menus + .iter() + .filter(|&x| x.menu_date == local) + .collect(); + (local, menus) } fn nth(&self, days: u8, vegetarian: bool) -> Option<(String, Vec<&Menu>)> { @@ -90,23 +89,21 @@ impl Mealplan for Mensa { Some(dt) => { let local = format!("{}", dt.format("%Y-%m-%d")); if vegetarian { - Some(( - local.clone(), - self.canteen - .menus - .iter() - .filter(|&x| x.menu_date == local && x.menu_line.contains("veg")) - .collect(), - )) + let menus = self + .canteen + .menus + .iter() + .filter(|&x| x.menu_date == local && x.menu_line.contains("veg")) + .collect(); + Some((local, menus)) } else { - Some(( - local.clone(), - self.canteen - .menus - .iter() - .filter(|&x| x.menu_date == local) - .collect(), - )) + let menus = self + .canteen + .menus + .iter() + .filter(|&x| x.menu_date == local) + .collect(); + Some((local, menus)) } } _ => None,