Skip to content

Commit ddaebbd

Browse files
committed
Use new filter map heuristic in clippy
1 parent c9cde4f commit ddaebbd

File tree

3 files changed

+4
-6
lines changed

3 files changed

+4
-6
lines changed

clippy_lints/src/multiple_crate_versions.rs

+2-1
Original file line numberDiff line numberDiff line change
@@ -51,7 +51,8 @@ impl LateLintPass<'_> for MultipleCrateVersions {
5151
if let Some(resolve) = &metadata.resolve;
5252
if let Some(local_id) = packages
5353
.iter()
54-
.find_map(|p| if p.name == *local_name { Some(&p.id) } else { None });
54+
.find(|p| p.name == *local_name)
55+
.map(|p| &p.id);
5556
then {
5657
for (name, group) in &packages.iter().group_by(|p| p.name.clone()) {
5758
let group: Vec<&Package> = group.collect();

clippy_lints/src/shadow.rs

+1-3
Original file line numberDiff line numberDiff line change
@@ -203,9 +203,7 @@ fn check_pat<'tcx>(
203203
if let ExprKind::Struct(_, ref efields, _) = init_struct.kind {
204204
for field in pfields {
205205
let name = field.ident.name;
206-
let efield = efields
207-
.iter()
208-
.find_map(|f| if f.ident.name == name { Some(&*f.expr) } else { None });
206+
let efield = efields.iter().find(|f| f.ident.name == name).map(|f| f.expr);
209207
check_pat(cx, &field.pat, efield, span, bindings);
210208
}
211209
} else {

clippy_lints/src/suspicious_operation_groupings.rs

+1-2
Original file line numberDiff line numberDiff line change
@@ -688,6 +688,5 @@ fn skip_index<A, Iter>(iter: Iter, index: usize) -> impl Iterator<Item = A>
688688
where
689689
Iter: Iterator<Item = A>,
690690
{
691-
iter.enumerate()
692-
.filter_map(move |(i, a)| if i == index { None } else { Some(a) })
691+
iter.enumerate().filter(move |&(i, _)| i != index).map(|(_, a)| a)
693692
}

0 commit comments

Comments
 (0)