Unnamed repository; edit this file 'description' to name the repository.
Diffstat (limited to 'crates/ide/src/extend_selection.rs')
-rw-r--r--crates/ide/src/extend_selection.rs10
1 files changed, 4 insertions, 6 deletions
diff --git a/crates/ide/src/extend_selection.rs b/crates/ide/src/extend_selection.rs
index 5f6aaeaabb..3d49082f28 100644
--- a/crates/ide/src/extend_selection.rs
+++ b/crates/ide/src/extend_selection.rs
@@ -1,6 +1,6 @@
use std::iter::successors;
-use hir::{DescendPreference, Semantics};
+use hir::Semantics;
use ide_db::RootDatabase;
use syntax::{
algo::{self, skip_trivia_token},
@@ -140,10 +140,8 @@ fn extend_tokens_from_range(
// compute original mapped token range
let extended = {
- let fst_expanded =
- sema.descend_into_macros_single(DescendPreference::None, first_token.clone());
- let lst_expanded =
- sema.descend_into_macros_single(DescendPreference::None, last_token.clone());
+ let fst_expanded = sema.descend_into_macros_single_exact(first_token.clone());
+ let lst_expanded = sema.descend_into_macros_single_exact(last_token.clone());
let mut lca =
algo::least_common_ancestor(&fst_expanded.parent()?, &lst_expanded.parent()?)?;
lca = shallowest_node(&lca);
@@ -157,7 +155,7 @@ fn extend_tokens_from_range(
let validate = || {
let extended = &extended;
move |token: &SyntaxToken| -> bool {
- let expanded = sema.descend_into_macros_single(DescendPreference::None, token.clone());
+ let expanded = sema.descend_into_macros_single_exact(token.clone());
let parent = match expanded.parent() {
Some(it) => it,
None => return false,