]> git.lizzy.rs Git - rust.git/commitdiff
move highlight_if_we_can_match_hir_ty call
authorSNCPlay42 <SNCPlay42@gmail.com>
Wed, 22 Jul 2020 21:31:18 +0000 (22:31 +0100)
committerSNCPlay42 <SNCPlay42@gmail.com>
Wed, 22 Jul 2020 23:21:16 +0000 (00:21 +0100)
out of highlight_if_we_can_match_hir_ty_from_argument, which is then
renamed

src/librustc_mir/borrow_check/diagnostics/region_name.rs

index 378713c52a2b4e23de8ea38400a85bc64f532e75..992df06e57919a041346d6aaba53d09fd476896f 100644 (file)
@@ -342,7 +342,8 @@ fn give_name_if_anonymous_region_appears_in_arguments(
             argument_index,
         );
 
-        self.highlight_if_we_can_match_hir_ty_from_argument(fr, arg_ty, argument_index)
+        self.get_argument_hir_ty_for_highlighting(argument_index)
+            .and_then(|arg_hir_ty| self.highlight_if_we_can_match_hir_ty(fr, arg_ty, arg_hir_ty))
             .or_else(|| {
                 // `highlight_if_we_cannot_match_hir_ty` needs to know the number we will give to
                 // the anonymous region. If it succeeds, the `synthesize_region_name` call below
@@ -356,12 +357,10 @@ fn give_name_if_anonymous_region_appears_in_arguments(
             })
     }
 
-    fn highlight_if_we_can_match_hir_ty_from_argument(
+    fn get_argument_hir_ty_for_highlighting(
         &self,
-        needle_fr: RegionVid,
-        argument_ty: Ty<'tcx>,
         argument_index: usize,
-    ) -> Option<RegionNameHighlight> {
+    ) -> Option<&hir::Ty<'tcx>> {
         let mir_hir_id = self.infcx.tcx.hir().as_local_hir_id(self.mir_def_id);
         let fn_decl = self.infcx.tcx.hir().fn_decl_by_hir_id(mir_hir_id)?;
         let argument_hir_ty: &hir::Ty<'_> = fn_decl.inputs.get(argument_index)?;
@@ -373,7 +372,7 @@ fn highlight_if_we_can_match_hir_ty_from_argument(
             // (`give_name_if_anonymous_region_appears_in_arguments`).
             hir::TyKind::Infer => None,
 
-            _ => self.highlight_if_we_can_match_hir_ty(needle_fr, argument_ty, argument_hir_ty),
+            _ => Some(argument_hir_ty),
         }
     }