diff options
Diffstat (limited to 'crates/ra_hir_def/src')
-rw-r--r-- | crates/ra_hir_def/src/nameres.rs | 8 | ||||
-rw-r--r-- | crates/ra_hir_def/src/nameres/mod_resolution.rs | 12 | ||||
-rw-r--r-- | crates/ra_hir_def/src/nameres/per_ns.rs | 8 |
3 files changed, 12 insertions, 16 deletions
diff --git a/crates/ra_hir_def/src/nameres.rs b/crates/ra_hir_def/src/nameres.rs index 433bdde48..e1959cdb9 100644 --- a/crates/ra_hir_def/src/nameres.rs +++ b/crates/ra_hir_def/src/nameres.rs | |||
@@ -50,8 +50,8 @@ | |||
50 | // FIXME: review privacy of submodules | 50 | // FIXME: review privacy of submodules |
51 | pub mod raw; | 51 | pub mod raw; |
52 | pub mod per_ns; | 52 | pub mod per_ns; |
53 | pub mod collector; | 53 | mod collector; |
54 | pub mod mod_resolution; | 54 | mod mod_resolution; |
55 | 55 | ||
56 | #[cfg(test)] | 56 | #[cfg(test)] |
57 | mod tests; | 57 | mod tests; |
@@ -196,7 +196,7 @@ pub struct Resolution { | |||
196 | } | 196 | } |
197 | 197 | ||
198 | impl Resolution { | 198 | impl Resolution { |
199 | pub(crate) fn from_macro(macro_: MacroDefId) -> Self { | 199 | fn from_macro(macro_: MacroDefId) -> Self { |
200 | Resolution { def: PerNs::macros(macro_), import: None } | 200 | Resolution { def: PerNs::macros(macro_), import: None } |
201 | } | 201 | } |
202 | } | 202 | } |
@@ -460,7 +460,7 @@ impl CrateDefMap { | |||
460 | from_crate_root.or(from_extern_prelude) | 460 | from_crate_root.or(from_extern_prelude) |
461 | } | 461 | } |
462 | 462 | ||
463 | pub(crate) fn resolve_name_in_module( | 463 | fn resolve_name_in_module( |
464 | &self, | 464 | &self, |
465 | db: &impl DefDatabase2, | 465 | db: &impl DefDatabase2, |
466 | module: CrateModuleId, | 466 | module: CrateModuleId, |
diff --git a/crates/ra_hir_def/src/nameres/mod_resolution.rs b/crates/ra_hir_def/src/nameres/mod_resolution.rs index f6b0b8fb1..b3b1379d0 100644 --- a/crates/ra_hir_def/src/nameres/mod_resolution.rs +++ b/crates/ra_hir_def/src/nameres/mod_resolution.rs | |||
@@ -6,7 +6,7 @@ use ra_syntax::SmolStr; | |||
6 | use crate::{db::DefDatabase2, HirFileId}; | 6 | use crate::{db::DefDatabase2, HirFileId}; |
7 | 7 | ||
8 | #[derive(Clone, Debug)] | 8 | #[derive(Clone, Debug)] |
9 | pub struct ModDir { | 9 | pub(super) struct ModDir { |
10 | /// `.` for `mod.rs`, `lib.rs` | 10 | /// `.` for `mod.rs`, `lib.rs` |
11 | /// `./foo` for `foo.rs` | 11 | /// `./foo` for `foo.rs` |
12 | /// `./foo/bar` for `mod bar { mod x; }` nested in `foo.rs` | 12 | /// `./foo/bar` for `mod bar { mod x; }` nested in `foo.rs` |
@@ -16,11 +16,15 @@ pub struct ModDir { | |||
16 | } | 16 | } |
17 | 17 | ||
18 | impl ModDir { | 18 | impl ModDir { |
19 | pub fn root() -> ModDir { | 19 | pub(super) fn root() -> ModDir { |
20 | ModDir { path: RelativePathBuf::default(), root_non_dir_owner: false } | 20 | ModDir { path: RelativePathBuf::default(), root_non_dir_owner: false } |
21 | } | 21 | } |
22 | 22 | ||
23 | pub fn descend_into_definition(&self, name: &Name, attr_path: Option<&SmolStr>) -> ModDir { | 23 | pub(super) fn descend_into_definition( |
24 | &self, | ||
25 | name: &Name, | ||
26 | attr_path: Option<&SmolStr>, | ||
27 | ) -> ModDir { | ||
24 | let mut path = self.path.clone(); | 28 | let mut path = self.path.clone(); |
25 | match attr_to_path(attr_path) { | 29 | match attr_to_path(attr_path) { |
26 | None => path.push(&name.to_string()), | 30 | None => path.push(&name.to_string()), |
@@ -34,7 +38,7 @@ impl ModDir { | |||
34 | ModDir { path, root_non_dir_owner: false } | 38 | ModDir { path, root_non_dir_owner: false } |
35 | } | 39 | } |
36 | 40 | ||
37 | pub fn resolve_declaration( | 41 | pub(super) fn resolve_declaration( |
38 | &self, | 42 | &self, |
39 | db: &impl DefDatabase2, | 43 | db: &impl DefDatabase2, |
40 | file_id: HirFileId, | 44 | file_id: HirFileId, |
diff --git a/crates/ra_hir_def/src/nameres/per_ns.rs b/crates/ra_hir_def/src/nameres/per_ns.rs index 298b0b0c7..717ed1ef9 100644 --- a/crates/ra_hir_def/src/nameres/per_ns.rs +++ b/crates/ra_hir_def/src/nameres/per_ns.rs | |||
@@ -4,14 +4,6 @@ use hir_expand::MacroDefId; | |||
4 | 4 | ||
5 | use crate::ModuleDefId; | 5 | use crate::ModuleDefId; |
6 | 6 | ||
7 | #[derive(Clone, Copy, Debug, PartialEq, Eq, PartialOrd, Ord, Hash)] | ||
8 | pub enum Namespace { | ||
9 | Types, | ||
10 | Values, | ||
11 | // Note that only type inference uses this enum, and it doesn't care about macros. | ||
12 | // Macro, | ||
13 | } | ||
14 | |||
15 | #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] | 7 | #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] |
16 | pub struct PerNs { | 8 | pub struct PerNs { |
17 | pub types: Option<ModuleDefId>, | 9 | pub types: Option<ModuleDefId>, |