Unnamed repository; edit this file 'description' to name the repository.
Diffstat (limited to 'crates/ide/src/parent_module.rs')
| -rw-r--r-- | crates/ide/src/parent_module.rs | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/crates/ide/src/parent_module.rs b/crates/ide/src/parent_module.rs index 6d82f9b063..90cccca5e8 100644 --- a/crates/ide/src/parent_module.rs +++ b/crates/ide/src/parent_module.rs @@ -1,6 +1,6 @@ use hir::{db::DefDatabase, Semantics}; use ide_db::{ - base_db::{CrateId, FileLoader}, + base_db::{CrateId, RootQueryDb, Upcast}, FileId, FilePosition, RootDatabase, }; use itertools::Itertools; @@ -54,7 +54,9 @@ pub(crate) fn parent_module(db: &RootDatabase, position: FilePosition) -> Vec<Na /// This returns `Vec` because a module may be included from several places. pub(crate) fn crates_for(db: &RootDatabase, file_id: FileId) -> Vec<CrateId> { - db.relevant_crates(file_id) + let root_db = Upcast::<dyn RootQueryDb>::upcast(db); + root_db + .relevant_crates(file_id) .iter() .copied() .filter(|&crate_id| db.crate_def_map(crate_id).modules_for_file(file_id).next().is_some()) |