aboutsummaryrefslogtreecommitdiff
path: root/crates/ra_hir/src/code_model_impl/module.rs
diff options
context:
space:
mode:
Diffstat (limited to 'crates/ra_hir/src/code_model_impl/module.rs')
-rw-r--r--crates/ra_hir/src/code_model_impl/module.rs16
1 files changed, 11 insertions, 5 deletions
diff --git a/crates/ra_hir/src/code_model_impl/module.rs b/crates/ra_hir/src/code_model_impl/module.rs
index 4a3901b8b..f487b8532 100644
--- a/crates/ra_hir/src/code_model_impl/module.rs
+++ b/crates/ra_hir/src/code_model_impl/module.rs
@@ -7,7 +7,7 @@ use crate::{
7 module_tree::ModuleId, 7 module_tree::ModuleId,
8 impl_block::ImplId, 8 impl_block::ImplId,
9 nameres::{lower::ImportId}, 9 nameres::{lower::ImportId},
10 db::HirDatabase, 10 HirDatabase, PersistentHirDatabase,
11}; 11};
12 12
13impl Module { 13impl Module {
@@ -24,7 +24,10 @@ impl Module {
24 Some(link.name(&module_tree).clone()) 24 Some(link.name(&module_tree).clone())
25 } 25 }
26 26
27 pub(crate) fn definition_source_impl(&self, db: &impl HirDatabase) -> (FileId, ModuleSource) { 27 pub(crate) fn definition_source_impl(
28 &self,
29 db: &impl PersistentHirDatabase,
30 ) -> (FileId, ModuleSource) {
28 let module_tree = db.module_tree(self.krate); 31 let module_tree = db.module_tree(self.krate);
29 let file_id = self.module_id.file_id(&module_tree); 32 let file_id = self.module_id.file_id(&module_tree);
30 let decl_id = self.module_id.decl_id(&module_tree); 33 let decl_id = self.module_id.decl_id(&module_tree);
@@ -67,7 +70,7 @@ impl Module {
67 source_map.get(&source, impl_id) 70 source_map.get(&source, impl_id)
68 } 71 }
69 72
70 pub(crate) fn crate_root_impl(&self, db: &impl HirDatabase) -> Module { 73 pub(crate) fn crate_root_impl(&self, db: &impl PersistentHirDatabase) -> Module {
71 let module_tree = db.module_tree(self.krate); 74 let module_tree = db.module_tree(self.krate);
72 let module_id = self.module_id.crate_root(&module_tree); 75 let module_id = self.module_id.crate_root(&module_tree);
73 self.with_module_id(module_id) 76 self.with_module_id(module_id)
@@ -81,7 +84,10 @@ impl Module {
81 } 84 }
82 85
83 /// Iterates over all child modules. 86 /// Iterates over all child modules.
84 pub(crate) fn children_impl(&self, db: &impl HirDatabase) -> impl Iterator<Item = Module> { 87 pub(crate) fn children_impl(
88 &self,
89 db: &impl PersistentHirDatabase,
90 ) -> impl Iterator<Item = Module> {
85 let module_tree = db.module_tree(self.krate); 91 let module_tree = db.module_tree(self.krate);
86 let children = self 92 let children = self
87 .module_id 93 .module_id
@@ -91,7 +97,7 @@ impl Module {
91 children.into_iter() 97 children.into_iter()
92 } 98 }
93 99
94 pub(crate) fn parent_impl(&self, db: &impl HirDatabase) -> Option<Module> { 100 pub(crate) fn parent_impl(&self, db: &impl PersistentHirDatabase) -> Option<Module> {
95 let module_tree = db.module_tree(self.krate); 101 let module_tree = db.module_tree(self.krate);
96 let parent_id = self.module_id.parent(&module_tree)?; 102 let parent_id = self.module_id.parent(&module_tree)?;
97 Some(self.with_module_id(parent_id)) 103 Some(self.with_module_id(parent_id))