]> git.lizzy.rs Git - rust.git/commitdiff
Use DefIdTree instead of open-coding it.
authorCamille GILLOT <gillot.camille@gmail.com>
Wed, 27 Jul 2022 20:06:30 +0000 (22:06 +0200)
committerCamille GILLOT <gillot.camille@gmail.com>
Wed, 3 Aug 2022 16:44:18 +0000 (18:44 +0200)
compiler/rustc_resolve/src/late/lifetimes.rs

index 01ada080b019cbbf805cd6476d4b91cefc045ef6..1892216dec0020459628dce1f469324fce851d49 100644 (file)
@@ -1437,13 +1437,9 @@ fn visit_segment_args(
 
         // 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