]> git.lizzy.rs Git - rust.git/commitdiff
Remove import field
authorAleksey Kladov <aleksey.kladov@gmail.com>
Sun, 22 Dec 2019 14:28:55 +0000 (15:28 +0100)
committerAleksey Kladov <aleksey.kladov@gmail.com>
Sun, 22 Dec 2019 14:28:55 +0000 (15:28 +0100)
crates/ra_hir_def/src/item_scope.rs
crates/ra_hir_def/src/nameres/collector.rs

index b5c07ed5ff1465f4e3ed05df873bbe7e3c8ed1d5..81089554f0aa2549380aa1a8c2266c6f53007510 100644 (file)
@@ -30,9 +30,7 @@ pub struct ItemScope {
 static BUILTIN_SCOPE: Lazy<FxHashMap<Name, Resolution>> = Lazy::new(|| {
     BuiltinType::ALL
         .iter()
-        .map(|(name, ty)| {
-            (name.clone(), Resolution { def: PerNs::types(ty.clone().into()), import: false })
-        })
+        .map(|(name, ty)| (name.clone(), Resolution { def: PerNs::types(ty.clone().into()) }))
         .collect()
 });
 
@@ -113,29 +111,23 @@ pub(crate) fn define_legacy_macro(&mut self, name: Name, mac: MacroDefId) {
         self.legacy_macros.insert(name, mac);
     }
 
-    pub(crate) fn push_res(&mut self, name: Name, res: &Resolution, import: bool) -> bool {
+    pub(crate) fn push_res(&mut self, name: Name, res: &Resolution, _import: bool) -> bool {
         let mut changed = false;
         let existing = self.visible.entry(name.clone()).or_default();
 
         if existing.def.types.is_none() && res.def.types.is_some() {
             existing.def.types = res.def.types;
-            existing.import = import || res.import;
             changed = true;
         }
         if existing.def.values.is_none() && res.def.values.is_some() {
             existing.def.values = res.def.values;
-            existing.import = import || res.import;
             changed = true;
         }
         if existing.def.macros.is_none() && res.def.macros.is_some() {
             existing.def.macros = res.def.macros;
-            existing.import = import || res.import;
             changed = true;
         }
 
-        if existing.def.is_none() && res.def.is_none() && !existing.import && res.import {
-            existing.import = res.import;
-        }
         changed
     }
 
@@ -152,7 +144,6 @@ pub(crate) fn collect_legacy_macros(&self) -> FxHashMap<Name, MacroDefId> {
 pub struct Resolution {
     /// None for unresolved
     pub def: PerNs,
-    pub(crate) import: bool,
 }
 
 impl From<ModuleDefId> for PerNs {
index 745e31c0d33902e8d24589e26b52e59794a3b546..3706c12233072a9b094b476d1795d524b65e52a0 100644 (file)
@@ -218,7 +218,7 @@ fn define_macro(
             self.update(
                 self.def_map.root,
                 None,
-                &[(name, Resolution { def: PerNs::macros(macro_), import: false })],
+                &[(name, Resolution { def: PerNs::macros(macro_) })],
             );
         }
     }
@@ -401,10 +401,8 @@ fn record_resolved_import(&mut self, directive: &ImportDirective) {
                         .map(|(local_id, variant_data)| {
                             let name = variant_data.name.clone();
                             let variant = EnumVariantId { parent: e, local_id };
-                            let res = Resolution {
-                                def: PerNs::both(variant.into(), variant.into()),
-                                import: true,
-                            };
+                            let res =
+                                Resolution { def: PerNs::both(variant.into(), variant.into()) };
                             (name, res)
                         })
                         .collect::<Vec<_>>();
@@ -430,7 +428,7 @@ fn record_resolved_import(&mut self, directive: &ImportDirective) {
                         }
                     }
 
-                    let resolution = Resolution { def, import: true };
+                    let resolution = Resolution { def };
                     self.update(module_id, Some(import_id), &[(name, resolution)]);
                 }
                 None => tested_by!(bogus_paths),
@@ -717,7 +715,7 @@ fn push_child_module(
         let module = ModuleId { krate: self.def_collector.def_map.krate, local_id: res };
         let def: ModuleDefId = module.into();
         self.def_collector.def_map.modules[self.module_id].scope.define_def(def);
-        let resolution = Resolution { def: def.into(), import: false };
+        let resolution = Resolution { def: def.into() };
         self.def_collector.update(self.module_id, None, &[(name, resolution)]);
         res
     }
@@ -777,7 +775,7 @@ fn define_def(&mut self, def: &raw::DefData, attrs: &Attrs) {
             .into(),
         };
         self.def_collector.def_map.modules[self.module_id].scope.define_def(def);
-        let resolution = Resolution { def: def.into(), import: false };
+        let resolution = Resolution { def: def.into() };
         self.def_collector.update(self.module_id, None, &[(name, resolution)])
     }