about summary refs log tree commit diff
diff options
context:
space:
mode:
authorCamille GILLOT <gillot.camille@gmail.com>2022-07-27 22:06:30 +0200
committerCamille GILLOT <gillot.camille@gmail.com>2022-08-03 18:44:18 +0200
commit48bae9360feea931a0ef635ef1b69c61113dcd1a (patch)
tree7f2e2c5151cbc42bc69661636a58ccdf715de39d
parent421bb6ac62f5624a05d9e4ff0a12c91da91e49a8 (diff)
downloadrust-48bae9360feea931a0ef635ef1b69c61113dcd1a.tar.gz
rust-48bae9360feea931a0ef635ef1b69c61113dcd1a.zip
Use DefIdTree instead of open-coding it.
-rw-r--r--compiler/rustc_resolve/src/late/lifetimes.rs8
1 files changed, 2 insertions, 6 deletions
diff --git a/compiler/rustc_resolve/src/late/lifetimes.rs b/compiler/rustc_resolve/src/late/lifetimes.rs
index 01ada080b01..1892216dec0 100644
--- a/compiler/rustc_resolve/src/late/lifetimes.rs
+++ b/compiler/rustc_resolve/src/late/lifetimes.rs
@@ -1437,13 +1437,9 @@ impl<'a, 'tcx> LifetimeContext<'a, 'tcx> {
 
         // Figure out if this is a type/trait segment,
         // which requires object lifetime defaults.
-        let parent_def_id = |this: &mut Self, def_id: DefId| {
-            let def_key = this.tcx.def_key(def_id);
-            DefId { krate: def_id.krate, index: def_key.parent.expect("missing parent") }
-        };
         let type_def_id = match res {
-            Res::Def(DefKind::AssocTy, def_id) if depth == 1 => Some(parent_def_id(self, def_id)),
-            Res::Def(DefKind::Variant, def_id) if depth == 0 => Some(parent_def_id(self, def_id)),
+            Res::Def(DefKind::AssocTy, def_id) if depth == 1 => Some(self.tcx.parent(def_id)),
+            Res::Def(DefKind::Variant, def_id) if depth == 0 => Some(self.tcx.parent(def_id)),
             Res::Def(
                 DefKind::Struct
                 | DefKind::Union