Skip to content

Commit 5368e2c

Browse files
Merge #7989
7989: Remove `ItemTree::source` r=jonas-schievink a=jonas-schievink `HasSource` should be used instead bors r+ Co-authored-by: Jonas Schievink <[email protected]>
2 parents 437527b + 8447f10 commit 5368e2c

File tree

2 files changed

+4
-18
lines changed

2 files changed

+4
-18
lines changed

crates/hir_def/src/item_tree.rs

-12
Original file line numberDiff line numberDiff line change
@@ -209,18 +209,6 @@ impl ItemTree {
209209
}
210210
}
211211

212-
pub fn source<S: ItemTreeNode>(&self, db: &dyn DefDatabase, of: ItemTreeId<S>) -> S::Source {
213-
// This unwrap cannot fail, since it has either succeeded above, or resulted in an empty
214-
// ItemTree (in which case there is no valid `FileItemTreeId` to call this method with).
215-
let root =
216-
db.parse_or_expand(of.file_id).expect("parse_or_expand failed on constructed ItemTree");
217-
218-
let id = self[of.value].ast_id();
219-
let map = db.ast_id_map(of.file_id);
220-
let ptr = map.get(id);
221-
ptr.to_node(&root)
222-
}
223-
224212
fn data(&self) -> &ItemTreeData {
225213
self.data.as_ref().expect("attempted to access data of empty ItemTree")
226214
}

crates/hir_ty/src/tests.rs

+4-6
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@ use hir_def::{
1919
item_scope::ItemScope,
2020
keys,
2121
nameres::DefMap,
22+
src::HasSource,
2223
AssocItemId, DefWithBodyId, LocalModuleId, Lookup, ModuleDefId,
2324
};
2425
use hir_expand::{db::AstDatabase, InFile};
@@ -195,18 +196,15 @@ fn infer_with_mismatches(content: &str, include_mismatches: bool) -> String {
195196
defs.sort_by_key(|def| match def {
196197
DefWithBodyId::FunctionId(it) => {
197198
let loc = it.lookup(&db);
198-
let tree = db.item_tree(loc.id.file_id);
199-
tree.source(&db, loc.id).syntax().text_range().start()
199+
loc.source(&db).value.syntax().text_range().start()
200200
}
201201
DefWithBodyId::ConstId(it) => {
202202
let loc = it.lookup(&db);
203-
let tree = db.item_tree(loc.id.file_id);
204-
tree.source(&db, loc.id).syntax().text_range().start()
203+
loc.source(&db).value.syntax().text_range().start()
205204
}
206205
DefWithBodyId::StaticId(it) => {
207206
let loc = it.lookup(&db);
208-
let tree = db.item_tree(loc.id.file_id);
209-
tree.source(&db, loc.id).syntax().text_range().start()
207+
loc.source(&db).value.syntax().text_range().start()
210208
}
211209
});
212210
for def in defs {

0 commit comments

Comments
 (0)