ide: show go to for function hover return type

This commit is contained in:
Jake Heinz 2021-11-18 08:00:22 +00:00
parent 64a73dcfba
commit 876f44b3ea
2 changed files with 32 additions and 28 deletions

View File

@ -314,6 +314,7 @@ fn goto_type_action_for_def(db: &RootDatabase, def: Definition) -> Option<HoverA
Definition::Local(it) => it.ty(db),
Definition::GenericParam(hir::GenericParam::ConstParam(it)) => it.ty(db),
Definition::Field(field) => field.ty(db),
Definition::Function(function) => function.ret_type(db),
_ => return None,
};

View File

@ -1718,40 +1718,43 @@ fn test_hover_test_has_action() {
fn foo_$0test() {}
"#,
expect![[r#"
[
Reference(
FilePosition {
[
Reference(
FilePosition {
file_id: FileId(
0,
),
offset: 11,
},
),
Runnable(
Runnable {
use_name_in_title: false,
nav: NavigationTarget {
file_id: FileId(
0,
),
offset: 11,
full_range: 0..24,
focus_range: 11..19,
name: "foo_test",
kind: Function,
},
),
Runnable(
Runnable {
use_name_in_title: false,
nav: NavigationTarget {
file_id: FileId(
0,
),
full_range: 0..24,
focus_range: 11..19,
name: "foo_test",
kind: Function,
kind: Test {
test_id: Path(
"foo_test",
),
attr: TestAttr {
ignore: false,
},
kind: Test {
test_id: Path(
"foo_test",
),
attr: TestAttr {
ignore: false,
},
},
cfg: None,
},
),
]
"#]],
cfg: None,
},
),
GoToType(
[],
),
]
"#]],
);
}