diff --git a/crates/hir_def/src/item_tree.rs b/crates/hir_def/src/item_tree.rs index 6bb334573ef..09bcb10dc0c 100644 --- a/crates/hir_def/src/item_tree.rs +++ b/crates/hir_def/src/item_tree.rs @@ -209,18 +209,6 @@ impl ItemTree { } } - pub fn source(&self, db: &dyn DefDatabase, of: ItemTreeId) -> S::Source { - // This unwrap cannot fail, since it has either succeeded above, or resulted in an empty - // ItemTree (in which case there is no valid `FileItemTreeId` to call this method with). - let root = - db.parse_or_expand(of.file_id).expect("parse_or_expand failed on constructed ItemTree"); - - let id = self[of.value].ast_id(); - let map = db.ast_id_map(of.file_id); - let ptr = map.get(id); - ptr.to_node(&root) - } - fn data(&self) -> &ItemTreeData { self.data.as_ref().expect("attempted to access data of empty ItemTree") } diff --git a/crates/hir_ty/src/tests.rs b/crates/hir_ty/src/tests.rs index fc770ea600c..0a4141e698b 100644 --- a/crates/hir_ty/src/tests.rs +++ b/crates/hir_ty/src/tests.rs @@ -19,6 +19,7 @@ use hir_def::{ item_scope::ItemScope, keys, nameres::DefMap, + src::HasSource, AssocItemId, DefWithBodyId, LocalModuleId, Lookup, ModuleDefId, }; use hir_expand::{db::AstDatabase, InFile}; @@ -195,18 +196,15 @@ fn infer_with_mismatches(content: &str, include_mismatches: bool) -> String { defs.sort_by_key(|def| match def { DefWithBodyId::FunctionId(it) => { let loc = it.lookup(&db); - let tree = db.item_tree(loc.id.file_id); - tree.source(&db, loc.id).syntax().text_range().start() + loc.source(&db).value.syntax().text_range().start() } DefWithBodyId::ConstId(it) => { let loc = it.lookup(&db); - let tree = db.item_tree(loc.id.file_id); - tree.source(&db, loc.id).syntax().text_range().start() + loc.source(&db).value.syntax().text_range().start() } DefWithBodyId::StaticId(it) => { let loc = it.lookup(&db); - let tree = db.item_tree(loc.id.file_id); - tree.source(&db, loc.id).syntax().text_range().start() + loc.source(&db).value.syntax().text_range().start() } }); for def in defs {