Unnamed repository; edit this file 'description' to name the repository.
Diffstat (limited to 'crates/ide/src/references.rs')
-rw-r--r--crates/ide/src/references.rs16
1 files changed, 9 insertions, 7 deletions
diff --git a/crates/ide/src/references.rs b/crates/ide/src/references.rs
index 339315db57..04b5f27703 100644
--- a/crates/ide/src/references.rs
+++ b/crates/ide/src/references.rs
@@ -112,7 +112,7 @@ pub(crate) fn find_all_refs(
Some(name) => {
let def = match NameClass::classify(sema, &name)? {
NameClass::Definition(it) | NameClass::ConstReference(it) => it,
- NameClass::PatFieldShorthand { local_def: _, field_ref } => {
+ NameClass::PatFieldShorthand { local_def: _, field_ref, adt_subst: _ } => {
Definition::Field(field_ref)
}
};
@@ -156,10 +156,12 @@ pub(crate) fn find_defs<'a>(
let def = match name_like {
ast::NameLike::NameRef(name_ref) => {
match NameRefClass::classify(sema, &name_ref)? {
- NameRefClass::Definition(def) => def,
- NameRefClass::FieldShorthand { local_ref, field_ref: _ } => {
- Definition::Local(local_ref)
- }
+ NameRefClass::Definition(def, _) => def,
+ NameRefClass::FieldShorthand {
+ local_ref,
+ field_ref: _,
+ adt_subst: _,
+ } => Definition::Local(local_ref),
NameRefClass::ExternCrateShorthand { decl, .. } => {
Definition::ExternCrateDecl(decl)
}
@@ -167,14 +169,14 @@ pub(crate) fn find_defs<'a>(
}
ast::NameLike::Name(name) => match NameClass::classify(sema, &name)? {
NameClass::Definition(it) | NameClass::ConstReference(it) => it,
- NameClass::PatFieldShorthand { local_def, field_ref: _ } => {
+ NameClass::PatFieldShorthand { local_def, field_ref: _, adt_subst: _ } => {
Definition::Local(local_def)
}
},
ast::NameLike::Lifetime(lifetime) => {
NameRefClass::classify_lifetime(sema, &lifetime)
.and_then(|class| match class {
- NameRefClass::Definition(it) => Some(it),
+ NameRefClass::Definition(it, _) => Some(it),
_ => None,
})
.or_else(|| {