about summary refs log tree commit diff
path: root/src
diff options
context:
space:
mode:
authorfee1-dead <ent3rm4n@gmail.com>2023-04-16 18:55:38 +0800
committerGitHub <noreply@github.com>2023-04-16 18:55:38 +0800
commiteba419195c7eea19df4366e07ddf074fe54dd00e (patch)
tree273ca45232745c7ad8bdf1d960b803335a2842aa /src
parenta5136f14aee8447820a81141631cd6e5919631a5 (diff)
parent4460a1dc28a10cd74a6e5636d6e2cd8c8f06ba4b (diff)
downloadrust-eba419195c7eea19df4366e07ddf074fe54dd00e.tar.gz
rust-eba419195c7eea19df4366e07ddf074fe54dd00e.zip
Rollup merge of #110345 - nnethercote:rm-Super-impls-for-Region, r=compiler-errors
Remove `TypeSuper{Foldable,Visitable}` impls for `Region`.

These traits exist so that folders/visitors can recurse into types of interest: binders, types, regions, predicates, and consts. But `Region` is non-recursive and cannot contain other types of interest, so its methods in these traits are trivial.

This commit inlines and removes those trivial methods.

r? `@compiler-errors`
Diffstat (limited to 'src')
-rw-r--r--src/librustdoc/clean/auto_trait.rs11
1 files changed, 5 insertions, 6 deletions
diff --git a/src/librustdoc/clean/auto_trait.rs b/src/librustdoc/clean/auto_trait.rs
index 9479b3ee036..f6088f4e64a 100644
--- a/src/librustdoc/clean/auto_trait.rs
+++ b/src/librustdoc/clean/auto_trait.rs
@@ -1,7 +1,7 @@
 use rustc_data_structures::fx::FxHashSet;
 use rustc_hir as hir;
 use rustc_hir::lang_items::LangItem;
-use rustc_middle::ty::{self, Region, RegionVid, TypeFoldable, TypeSuperFoldable};
+use rustc_middle::ty::{self, Region, RegionVid, TypeFoldable};
 use rustc_trait_selection::traits::auto_trait::{self, AutoTraitResult};
 use thin_vec::ThinVec;
 
@@ -740,10 +740,9 @@ impl<'a, 'tcx> TypeFolder<TyCtxt<'tcx>> for RegionReplacer<'a, 'tcx> {
     }
 
     fn fold_region(&mut self, r: ty::Region<'tcx>) -> ty::Region<'tcx> {
-        (match *r {
-            ty::ReVar(vid) => self.vid_to_region.get(&vid).cloned(),
-            _ => None,
-        })
-        .unwrap_or_else(|| r.super_fold_with(self))
+        match *r {
+            ty::ReVar(vid) => self.vid_to_region.get(&vid).cloned().unwrap_or(r),
+            _ => r,
+        }
     }
 }