From 9da9859411e59093d0944568dcf533aaf392ebe0 Mon Sep 17 00:00:00 2001 From: Chris Cochrun Date: Thu, 13 Apr 2023 09:19:49 -0500 Subject: [PATCH] using filter iterator functions instead of if else blocks --- src/rust/slide_model.rs | 25 ++++++++++++------------- 1 file changed, 12 insertions(+), 13 deletions(-) diff --git a/src/rust/slide_model.rs b/src/rust/slide_model.rs index e8810d7..c13b5ac 100644 --- a/src/rust/slide_model.rs +++ b/src/rust/slide_model.rs @@ -600,21 +600,20 @@ mod slide_model { for (i, slide) in slides_iter .enumerate() .filter(|x| x.0 < dest_slide as usize) + .filter(|x| { + x.1.service_item_id <= destination_index + && x.1.service_item_id > source_index + }) { - if slide.service_item_id <= destination_index - && slide.service_item_id > source_index - { - if let Some(slide) = self.as_mut().slides_mut().get_mut(i) { - println!( - "rust-switching-service: {:?} to {:?}", - slide.service_item_id, - slide.service_item_id - 1 - ); - slide.service_item_id -= 1; - } - println!("rust-did:"); + if let Some(slide) = self.as_mut().slides_mut().get_mut(i) { + println!( + "rust-switching-service: {:?} to {:?}", + slide.service_item_id, + slide.service_item_id - 1 + ); + slide.service_item_id -= 1; } - println!("rust-not-service_item_id: {:?}", slide.service_item_id); + println!("rust-did:"); } } else { for (i, slide) in slides_iter