Skip to content

Commit 2cc7bb3

Browse files
authored
Merge pull request #20445 from rust-lang/veykril/push-twmmuyzwtxno
fix: Attach db for inlay hint compute
2 parents 96e6e3a + 90647a1 commit 2cc7bb3

File tree

2 files changed

+11
-9
lines changed

2 files changed

+11
-9
lines changed

crates/hir-ty/src/next_solver/interner.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -289,7 +289,7 @@ impl<'db> DbInterner<'db> {
289289
krate: None,
290290
block: None,
291291
})
292-
.unwrap()
292+
.expect("db is expected to be attached")
293293
}
294294

295295
pub fn new_with(

crates/ide/src/inlay_hints.rs

Lines changed: 10 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -107,14 +107,16 @@ pub(crate) fn inlay_hints(
107107
}
108108
};
109109
let mut preorder = file.preorder();
110-
while let Some(event) = preorder.next() {
111-
if matches!((&event, range_limit), (WalkEvent::Enter(node), Some(range)) if range.intersect(node.text_range()).is_none())
112-
{
113-
preorder.skip_subtree();
114-
continue;
110+
salsa::attach(sema.db, || {
111+
while let Some(event) = preorder.next() {
112+
if matches!((&event, range_limit), (WalkEvent::Enter(node), Some(range)) if range.intersect(node.text_range()).is_none())
113+
{
114+
preorder.skip_subtree();
115+
continue;
116+
}
117+
hints(event);
115118
}
116-
hints(event);
117-
}
119+
});
118120
if let Some(range_limit) = range_limit {
119121
acc.retain(|hint| range_limit.contains_range(hint.range));
120122
}
@@ -736,7 +738,7 @@ fn label_of_ty(
736738
config: &InlayHintsConfig,
737739
display_target: DisplayTarget,
738740
) -> Result<(), HirDisplayError> {
739-
let iter_item_type = salsa::attach(sema.db, || hint_iterator(sema, famous_defs, ty));
741+
let iter_item_type = hint_iterator(sema, famous_defs, ty);
740742
match iter_item_type {
741743
Some((iter_trait, item, ty)) => {
742744
const LABEL_START: &str = "impl ";

0 commit comments

Comments
 (0)