]> git.lizzy.rs Git - rust.git/commitdiff
Strip
authoruHOOCCOOHu <hooccooh1896@gmail.com>
Mon, 9 Sep 2019 17:21:29 +0000 (01:21 +0800)
committeruHOOCCOOHu <hooccooh1896@gmail.com>
Mon, 9 Sep 2019 17:21:29 +0000 (01:21 +0800)
crates/ra_hir/src/nameres/per_ns.rs
crates/ra_hir/src/ty/lower.rs

index 6a50e05c199042672fd0a7e3ebf5cef3476d58b9..d07cc08f495c426675e0f7544f1aac6731792378 100644 (file)
@@ -4,7 +4,8 @@
 pub enum Namespace {
     Types,
     Values,
-    Macro,
+    // Note that only type inference uses this enum, and it doesn't care about macros.
+    // Macro,
 }
 
 #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)]
@@ -79,14 +80,7 @@ pub fn or(self, other: PerNs<T>) -> PerNs<T> {
         }
     }
 
-    pub fn and_then<U>(self, f: impl Fn(T) -> Option<U>) -> PerNs<U> {
-        PerNs {
-            types: self.types.and_then(&f),
-            values: self.values.and_then(&f),
-            macros: self.macros,
-        }
-    }
-
+    /// Map types and values. Leave macros unchanged.
     pub fn map<U>(self, f: impl Fn(T) -> U) -> PerNs<U> {
         PerNs { types: self.types.map(&f), values: self.values.map(&f), macros: self.macros }
     }
index a2adbc4b8a27c80e4434fc81b4ebbfa6aa42169c..0612298423edfe5effa8117239f418b54a184e34 100644 (file)
@@ -429,9 +429,6 @@ pub(crate) fn type_for_def(db: &impl HirDatabase, def: TypableDef, ns: Namespace
         (TypableDef::Const(_), Namespace::Types) => Ty::Unknown,
         (TypableDef::Static(_), Namespace::Types) => Ty::Unknown,
         (TypableDef::BuiltinType(_), Namespace::Values) => Ty::Unknown,
-
-        // Macro is not typeable
-        (_, Namespace::Macro) => Ty::Unknown,
     }
 }