]> git.lizzy.rs Git - rust.git/commitdiff
Iterate on explicit_predicates.
authorCamille GILLOT <gillot.camille@gmail.com>
Sun, 6 Dec 2020 21:22:59 +0000 (22:22 +0100)
committerCamille GILLOT <gillot.camille@gmail.com>
Tue, 16 Mar 2021 19:07:26 +0000 (20:07 +0100)
compiler/rustc_metadata/src/rmeta/encoder.rs

index cdbbd8579b4829bb8fec25b31201b014259bff7e..f042b5ad8e48bb7d95e7eb5cafc6f1a9c23da40a 100644 (file)
@@ -905,6 +905,7 @@ fn encode_def_ids(&mut self) {
             }
             let g = tcx.generics_of(def_id);
             record!(self.tables.generics[def_id] <- g);
+            record!(self.tables.explicit_predicates[def_id] <- self.tcx.explicit_predicates_of(def_id));
         }
         let inherent_impls = tcx.crate_inherent_impls(LOCAL_CRATE);
         for (def_id, implementations) in inherent_impls.inherent_impls.iter() {
@@ -950,7 +951,6 @@ fn encode_enum_variant_info(&mut self, def: &ty::AdtDef, index: VariantIdx) {
                 record!(self.tables.fn_sig[def_id] <- tcx.fn_sig(ctor_def_id));
             }
         }
-        self.encode_explicit_predicates(def_id);
         self.encode_inferred_outlives(def_id);
     }
 
@@ -973,7 +973,6 @@ fn encode_enum_variant_ctor(&mut self, def: &ty::AdtDef, index: VariantIdx) {
         if variant.ctor_kind == CtorKind::Fn {
             record!(self.tables.fn_sig[def_id] <- tcx.fn_sig(def_id));
         }
-        self.encode_explicit_predicates(def_id);
         self.encode_inferred_outlives(def_id);
     }
 
@@ -1033,7 +1032,6 @@ fn encode_field(
         record!(self.tables.kind[def_id] <- EntryKind::Field);
         self.encode_ident_span(def_id, field.ident);
         self.encode_item_type(def_id);
-        self.encode_explicit_predicates(def_id);
         self.encode_inferred_outlives(def_id);
     }
 
@@ -1054,16 +1052,9 @@ fn encode_struct_ctor(&mut self, adt_def: &ty::AdtDef, def_id: DefId) {
         if variant.ctor_kind == CtorKind::Fn {
             record!(self.tables.fn_sig[def_id] <- tcx.fn_sig(def_id));
         }
-        self.encode_explicit_predicates(def_id);
         self.encode_inferred_outlives(def_id);
     }
 
-    fn encode_explicit_predicates(&mut self, def_id: DefId) {
-        debug!("EncodeContext::encode_explicit_predicates({:?})", def_id);
-        record!(self.tables.explicit_predicates[def_id] <-
-            self.tcx.explicit_predicates_of(def_id));
-    }
-
     fn encode_inferred_outlives(&mut self, def_id: DefId) {
         debug!("EncodeContext::encode_inferred_outlives({:?})", def_id);
         let inferred_outlives = self.tcx.inferred_outlives_of(def_id);
@@ -1152,7 +1143,6 @@ fn encode_info_for_trait_item(&mut self, def_id: DefId) {
         if trait_item.kind == ty::AssocKind::Fn {
             record!(self.tables.fn_sig[def_id] <- tcx.fn_sig(def_id));
         }
-        self.encode_explicit_predicates(def_id);
         self.encode_inferred_outlives(def_id);
     }
 
@@ -1211,7 +1201,6 @@ fn encode_info_for_impl_item(&mut self, def_id: DefId) {
         if impl_item.kind == ty::AssocKind::Fn {
             record!(self.tables.fn_sig[def_id] <- tcx.fn_sig(def_id));
         }
-        self.encode_explicit_predicates(def_id);
         self.encode_inferred_outlives(def_id);
     }
 
@@ -1489,7 +1478,6 @@ fn encode_info_for_item(&mut self, def_id: DefId, item: &'tcx hir::Item<'tcx>) {
             | hir::ItemKind::OpaqueTy(..)
             | hir::ItemKind::Trait(..)
             | hir::ItemKind::TraitAlias(..) => {
-                self.encode_explicit_predicates(def_id);
                 self.encode_inferred_outlives(def_id);
             }
             _ => {}
@@ -1551,7 +1539,6 @@ fn encode_info_for_anon_const(&mut self, def_id: LocalDefId) {
 
         record!(self.tables.kind[def_id.to_def_id()] <- EntryKind::AnonConst(qualifs, const_data));
         self.encode_item_type(def_id.to_def_id());
-        self.encode_explicit_predicates(def_id.to_def_id());
         self.encode_inferred_outlives(def_id.to_def_id());
     }
 
@@ -1832,7 +1819,6 @@ fn encode_info_for_foreign_item(&mut self, def_id: DefId, nitem: &hir::ForeignIt
         if let hir::ForeignItemKind::Fn(..) = nitem.kind {
             record!(self.tables.fn_sig[def_id] <- tcx.fn_sig(def_id));
         }
-        self.encode_explicit_predicates(def_id);
         self.encode_inferred_outlives(def_id);
     }
 }