diff --git a/src/eval/global_state.rs b/src/eval/global_state.rs index 1ed3b3af..35b15416 100644 --- a/src/eval/global_state.rs +++ b/src/eval/global_state.rs @@ -156,13 +156,11 @@ impl GlobalRuntimeState<'_> { pub fn find_import(&self, name: &str) -> Option { let len = self.keys.len(); - self.keys.iter().rev().enumerate().find_map(|(i, key)| { - if key == name { - Some(len - 1 - i) - } else { - None - } - }) + self.keys + .iter() + .rev() + .position(|key| key == name) + .map(|i| len - 1 - i) } /// Push an imported [module][crate::Module] onto the stack. /// diff --git a/src/optimizer.rs b/src/optimizer.rs index 2a646e72..03bb8fbd 100644 --- a/src/optimizer.rs +++ b/src/optimizer.rs @@ -720,7 +720,7 @@ fn optimize_stmt(stmt: &mut Stmt, state: &mut OptimizerState, preserve_result: b // Remove all entries after a `true` condition if let Some(n) = list .iter() - .find(|&&index| expressions[index].is_always_true()) + .position(|&index| expressions[index].is_always_true()) { if n + 1 < list.len() { state.set_dirty(); diff --git a/src/types/dynamic.rs b/src/types/dynamic.rs index 1336551b..b596923a 100644 --- a/src/types/dynamic.rs +++ b/src/types/dynamic.rs @@ -186,7 +186,6 @@ pub enum Union { TimeStamp(Box, Tag, AccessMode), /// Any type as a trait object. - #[allow(clippy::redundant_allocation)] Variant(Box>, Tag, AccessMode), /// A _shared_ value of any type.