about summary refs log tree commit diff
diff options
context:
space:
mode:
authorEduardo Broto <ebroto@tutanota.com>2020-05-24 21:17:54 +0200
committerEduardo Broto <ebroto@tutanota.com>2020-05-25 20:00:08 +0200
commitec0a00e53980619a6313ff4f01099a1aebcfd9e6 (patch)
tree29acfca2edf36f8d117cda47bb95f0372aafc055
parent8642fc97dd1a9b4f0291726c47ec97d15599d74d (diff)
downloadrust-ec0a00e53980619a6313ff4f01099a1aebcfd9e6.tar.gz
rust-ec0a00e53980619a6313ff4f01099a1aebcfd9e6.zip
Use find_map instead of find() + map()
-rw-r--r--clippy_lints/src/multiple_crate_versions.rs5
1 files changed, 3 insertions, 2 deletions
diff --git a/clippy_lints/src/multiple_crate_versions.rs b/clippy_lints/src/multiple_crate_versions.rs
index b24ec897ef5..b6770804e18 100644
--- a/clippy_lints/src/multiple_crate_versions.rs
+++ b/clippy_lints/src/multiple_crate_versions.rs
@@ -37,7 +37,6 @@ declare_clippy_lint! {
 declare_lint_pass!(MultipleCrateVersions => [MULTIPLE_CRATE_VERSIONS]);
 
 impl LateLintPass<'_, '_> for MultipleCrateVersions {
-    #[allow(clippy::find_map)]
     fn check_crate(&mut self, cx: &LateContext<'_, '_>, _: &Crate<'_>) {
         if !run_lints(cx, &[MULTIPLE_CRATE_VERSIONS], CRATE_HIR_ID) {
             return;
@@ -56,7 +55,9 @@ impl LateLintPass<'_, '_> for MultipleCrateVersions {
 
         if_chain! {
             if let Some(resolve) = &metadata.resolve;
-            if let Some(local_id) = packages.iter().find(|p| p.name == *local_name).map(|p| &p.id);
+            if let Some(local_id) = packages
+                .iter()
+                .find_map(|p| if p.name == *local_name { Some(&p.id) } else { None });
             then {
                 for (name, group) in &packages.iter().group_by(|p| p.name.clone()) {
                     let group: Vec<&Package> = group.collect();