File tree Expand file tree Collapse file tree 1 file changed +24
-1
lines changed Expand file tree Collapse file tree 1 file changed +24
-1
lines changed Original file line number Diff line number Diff line change @@ -108,7 +108,7 @@ pub(crate) fn hover(
108
108
let definition = match_ast ! {
109
109
match node {
110
110
ast:: NameRef ( name_ref) => classify_name_ref( & sema, & name_ref) . map( |d| d. definition( sema. db) ) ,
111
- ast:: Name ( name) => classify_name( & sema, & name) . map ( |d| d. definition ( sema. db) ) ,
111
+ ast:: Name ( name) => classify_name( & sema, & name) . and_then ( |d| d. into_definition ( sema. db) ) ,
112
112
_ => None ,
113
113
}
114
114
} ;
@@ -3232,4 +3232,27 @@ fn main() { let foo_test = name_with_dashes::wrapper::Thing::new<|>(); }
3232
3232
"# ] ] ,
3233
3233
)
3234
3234
}
3235
+
3236
+ #[ test]
3237
+ fn hover_field_pat_shorthand_ref_match_ergonomics ( ) {
3238
+ check (
3239
+ r#"
3240
+ struct S {
3241
+ f: i32,
3242
+ }
3243
+
3244
+ fn main() {
3245
+ let s = S { f: 0 };
3246
+ let S { f<|> } = &s;
3247
+ }
3248
+ "# ,
3249
+ expect ! [ [ r#"
3250
+ *f*
3251
+
3252
+ ```rust
3253
+ &i32
3254
+ ```
3255
+ "# ] ] ,
3256
+ ) ;
3257
+ }
3235
3258
}
You can’t perform that action at this time.
0 commit comments