Unnamed repository; edit this file 'description' to name the repository.
Diffstat (limited to 'crates/hir-def/src/find_path.rs')
-rw-r--r--crates/hir-def/src/find_path.rs10
1 files changed, 6 insertions, 4 deletions
diff --git a/crates/hir-def/src/find_path.rs b/crates/hir-def/src/find_path.rs
index 6aaf8a674e..945deb8b52 100644
--- a/crates/hir-def/src/find_path.rs
+++ b/crates/hir-def/src/find_path.rs
@@ -641,6 +641,8 @@ fn find_local_import_locations(
#[cfg(test)]
mod tests {
+ use std::cell::LazyCell;
+
use expect_test::{Expect, expect};
use hir_expand::db::ExpandDatabase;
use itertools::Itertools;
@@ -672,10 +674,10 @@ mod tests {
syntax::SourceFile::parse(&format!("use {path};"), span::Edition::CURRENT);
let ast_path =
parsed_path_file.syntax_node().descendants().find_map(syntax::ast::Path::cast).unwrap();
- let mod_path = ModPath::from_src(&db, ast_path, &mut |range| {
- db.span_map(pos.file_id.into()).span_for_range(range).ctx
- })
- .unwrap();
+ let span_map = LazyCell::new(|| db.span_map(pos.file_id.into()));
+ let mod_path =
+ ModPath::from_src(&db, ast_path, &mut |range| span_map.span_for_range(range).ctx)
+ .unwrap();
let (def_map, local_def_map) = module.local_def_map(&db);
let resolved = def_map