about summary refs log tree commit diff
diff options
context:
space:
mode:
authorAda Alakbarova <ada.alakbarova@proton.me>2025-08-20 01:39:23 +0200
committerAda Alakbarova <ada.alakbarova@proton.me>2025-08-22 15:03:18 +0200
commit51426954182661dbe82424f790cb2b53b6a720d2 (patch)
tree76936848c82509b17e380801952f3922f29acea8
parent8a969f709034375eed5d13dee6b44b31fcef2cf5 (diff)
downloadrust-51426954182661dbe82424f790cb2b53b6a720d2.tar.gz
rust-51426954182661dbe82424f790cb2b53b6a720d2.zip
misc: rewrite as `if let`
-rw-r--r--clippy_lints/src/entry.rs53
1 files changed, 27 insertions, 26 deletions
diff --git a/clippy_lints/src/entry.rs b/clippy_lints/src/entry.rs
index 4e24f69357d..dd38aab6e3f 100644
--- a/clippy_lints/src/entry.rs
+++ b/clippy_lints/src/entry.rs
@@ -254,33 +254,34 @@ fn try_parse_contains<'tcx>(cx: &LateContext<'_>, expr: &'tcx Expr<'_>) -> Optio
         _ => None,
     });
 
-    match expr.kind {
-        ExprKind::MethodCall(
-            _,
+    if let ExprKind::MethodCall(
+        _,
+        map,
+        [
+            Expr {
+                kind: ExprKind::AddrOf(_, _, key),
+                span: key_span,
+                ..
+            },
+        ],
+        _,
+    ) = expr.kind
+        && key_span.eq_ctxt(expr.span)
+    {
+        let id = cx.typeck_results().type_dependent_def_id(expr.hir_id)?;
+        let expr = ContainsExpr {
+            negated,
             map,
-            [
-                Expr {
-                    kind: ExprKind::AddrOf(_, _, key),
-                    span: key_span,
-                    ..
-                },
-            ],
-            _,
-        ) if key_span.eq_ctxt(expr.span) => {
-            let id = cx.typeck_results().type_dependent_def_id(expr.hir_id)?;
-            let expr = ContainsExpr {
-                negated,
-                map,
-                key,
-                call_ctxt: expr.span.ctxt(),
-            };
-            match cx.tcx.get_diagnostic_name(id) {
-                Some(sym::btreemap_contains_key) => Some((MapType::BTree, expr)),
-                Some(sym::hashmap_contains_key) => Some((MapType::Hash, expr)),
-                _ => None,
-            }
-        },
-        _ => None,
+            key,
+            call_ctxt: expr.span.ctxt(),
+        };
+        match cx.tcx.get_diagnostic_name(id) {
+            Some(sym::btreemap_contains_key) => Some((MapType::BTree, expr)),
+            Some(sym::hashmap_contains_key) => Some((MapType::Hash, expr)),
+            _ => None,
+        }
+    } else {
+        None
     }
 }