about summary refs log tree commit diff
diff options
context:
space:
mode:
authorOli Scherer <git-spam-no-reply9815368754983@oli-obk.de>2024-03-05 09:42:25 +0000
committerOli Scherer <git-spam-no-reply9815368754983@oli-obk.de>2024-03-18 18:12:32 +0000
commit0dc876991c07dc8346fd3009b6edf1f46bf5e24e (patch)
tree797fb05c328e538561b1feb7db8aba85533ed44f
parent1e30c2915b057b6bb5db14d68b70d33dc8b407ce (diff)
downloadrust-0dc876991c07dc8346fd3009b6edf1f46bf5e24e.tar.gz
rust-0dc876991c07dc8346fd3009b6edf1f46bf5e24e.zip
Deduplicate `associated_body` and `body_id`
They match on almost the same patterns, which is fishy.

Also turn `associated_body` into a method and do some cleanups nearby the call sites
-rw-r--r--clippy_lints/src/needless_pass_by_ref_mut.rs6
1 files changed, 4 insertions, 2 deletions
diff --git a/clippy_lints/src/needless_pass_by_ref_mut.rs b/clippy_lints/src/needless_pass_by_ref_mut.rs
index a450dee3050..30d3e86dc4e 100644
--- a/clippy_lints/src/needless_pass_by_ref_mut.rs
+++ b/clippy_lints/src/needless_pass_by_ref_mut.rs
@@ -13,7 +13,6 @@ use rustc_hir::{
 use rustc_hir_typeck::expr_use_visitor as euv;
 use rustc_infer::infer::{InferCtxt, TyCtxtInferExt};
 use rustc_lint::{LateContext, LateLintPass};
-use rustc_middle::hir::map::associated_body;
 use rustc_middle::mir::FakeReadCause;
 use rustc_middle::ty::{self, Ty, TyCtxt, UpvarId, UpvarPath};
 use rustc_session::impl_lint_pass;
@@ -112,7 +111,10 @@ fn check_closures<'tcx>(
         }
         ctx.prev_bind = None;
         ctx.prev_move_to_closure.clear();
-        if let Some(body) = associated_body(cx.tcx.hir_node_by_def_id(closure))
+        if let Some(body) = cx
+            .tcx
+            .hir_node_by_def_id(closure)
+            .associated_body()
             .map(|(_, body_id)| hir.body(body_id))
         {
             euv::ExprUseVisitor::new(ctx, infcx, closure, cx.param_env, cx.typeck_results()).consume_body(body);