From f0ca2138370214b9fd9018d7460956de92afe6a5 Mon Sep 17 00:00:00 2001 From: mgros Date: Sat, 26 Sep 2026 18:24:59 +0200 Subject: [PATCH 1/2] simplify some Vector handling --- src/braille.rs | 15 +++++---------- src/chemistry.rs | 3 +-- 2 files changed, 6 insertions(+), 12 deletions(-) diff --git a/src/braille.rs b/src/braille.rs index 4f0ac0ec7..b202dc62c 100644 --- a/src/braille.rs +++ b/src/braille.rs @@ -2289,19 +2289,14 @@ fn handle_contractions(full_chars: &[char], start: usize, end: usize, mut result } fn init_patterns(contractions: &[Replacement]) -> RegexSet { - let mut vec: Vec<&str> = Vec::with_capacity(contractions.len()); - for contraction in contractions { - vec.push(&contraction.pattern); - } - return RegexSet::new(&vec).unwrap(); + let patterns = contractions.iter().map(|c| c.pattern.as_str()); + return RegexSet::new(patterns).unwrap(); } fn init_regex(contractions: &[Replacement]) -> Vec { - let mut vec = Vec::with_capacity(contractions.len()); - for contraction in contractions { - vec.push(Regex::new(&contraction.pattern).unwrap()); - } - return vec; + return contractions.iter() + .map(|c| Regex::new(&c.pattern).unwrap()) + .collect(); } } diff --git a/src/chemistry.rs b/src/chemistry.rs index f54e018dd..4e4101980 100644 --- a/src/chemistry.rs +++ b/src/chemistry.rs @@ -1298,8 +1298,7 @@ fn is_structural(elements: &[NameStr<'_>]) -> bool { assert!(elements.len() > 1); // already handled // debug!("is_structural: {:?}", elements); - let mut element_set = HashSet::with_capacity(elements.len()); - elements.iter().for_each(|e| {element_set.insert(as_str!(*e));}); + let element_set: HashSet<_> = elements.iter().map(|e| as_str!(*e)).collect(); return element_set.len() < elements.len(); } From d5fbcaff26e279d1e06d8cfbda14b3d484b85991 Mon Sep 17 00:00:00 2001 From: mgros Date: Sat, 26 Sep 2026 19:08:49 +0200 Subject: [PATCH 2/2] undo changes in `is_structural` --- src/chemistry.rs | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/chemistry.rs b/src/chemistry.rs index 4e4101980..f54e018dd 100644 --- a/src/chemistry.rs +++ b/src/chemistry.rs @@ -1298,7 +1298,8 @@ fn is_structural(elements: &[NameStr<'_>]) -> bool { assert!(elements.len() > 1); // already handled // debug!("is_structural: {:?}", elements); - let element_set: HashSet<_> = elements.iter().map(|e| as_str!(*e)).collect(); + let mut element_set = HashSet::with_capacity(elements.len()); + elements.iter().for_each(|e| {element_set.insert(as_str!(*e));}); return element_set.len() < elements.len(); }