diff options
Diffstat (limited to 'crates/ra_hir/src/code_model.rs')
-rw-r--r-- | crates/ra_hir/src/code_model.rs | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/crates/ra_hir/src/code_model.rs b/crates/ra_hir/src/code_model.rs index cc42068a1..4da3db0d6 100644 --- a/crates/ra_hir/src/code_model.rs +++ b/crates/ra_hir/src/code_model.rs | |||
@@ -227,6 +227,19 @@ impl Module { | |||
227 | pub(crate) fn with_module_id(self, module_id: LocalModuleId) -> Module { | 227 | pub(crate) fn with_module_id(self, module_id: LocalModuleId) -> Module { |
228 | Module::new(self.krate(), module_id) | 228 | Module::new(self.krate(), module_id) |
229 | } | 229 | } |
230 | |||
231 | pub fn find_path( | ||
232 | self, | ||
233 | db: &impl DefDatabase, | ||
234 | item: ModuleDef, | ||
235 | ) -> Option<hir_def::path::ModPath> { | ||
236 | // FIXME expose namespace choice | ||
237 | hir_def::find_path::find_path( | ||
238 | db, | ||
239 | hir_def::item_scope::ItemInNs::Types(item.into()), | ||
240 | self.into(), | ||
241 | ) | ||
242 | } | ||
230 | } | 243 | } |
231 | 244 | ||
232 | #[derive(Debug, Clone, Copy, PartialEq, Eq, Hash)] | 245 | #[derive(Debug, Clone, Copy, PartialEq, Eq, Hash)] |