bin/patch: Replace manual filter-collect

This patch replaces the manual filtering and pushing of iterators to
collections by using the more performant iterator API.

Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
This commit is contained in:
Matthias Beyer
2025-12-09 13:16:31 +01:00
committed by Erik Kundt
parent 8772445083
commit d3dcfd8e09
+7 -6
View File
@@ -114,12 +114,13 @@ impl TryFrom<&Context> for State {
let filter = PatchItemFilter::from_str(&context.filter.to_string()).unwrap_or_default();
// Convert into UI items
let mut items = vec![];
for patch in patches {
if let Ok(item) = PatchItem::new(&context.profile, &context.repository, patch.clone()) {
items.push(item);
}
}
let mut items: Vec<_> = patches
.into_iter()
.flat_map(|patch| {
PatchItem::new(&context.profile, &context.repository, patch.clone()).ok()
})
.collect();
items.sort_by(|a, b| b.timestamp.cmp(&a.timestamp));
Ok(Self {