From 18ec4e3403854995d44841a066ff3b190d8115e6 Mon Sep 17 00:00:00 2001 From: Florian Diebold Date: Sat, 18 Jan 2020 13:40:32 +0100 Subject: Improve parameter hints a bit & add emacs support - just include the name, not e.g. `mut` - don't return empty hints (or `_`) --- crates/ra_ide/src/display/function_signature.rs | 19 ++++++++++++++++--- 1 file changed, 16 insertions(+), 3 deletions(-) (limited to 'crates/ra_ide/src/display/function_signature.rs') diff --git a/crates/ra_ide/src/display/function_signature.rs b/crates/ra_ide/src/display/function_signature.rs index ddc53a52b..1e4a472b4 100644 --- a/crates/ra_ide/src/display/function_signature.rs +++ b/crates/ra_ide/src/display/function_signature.rs @@ -169,9 +169,22 @@ impl From<&'_ ast::FnDef> for FunctionSignature { res.push(self_param.syntax().text().to_string()) } - res.extend(param_list.params().map(|param| { - param.pat().map(|pat| pat.syntax().text().to_string()).unwrap_or_default() - })); + res.extend( + param_list + .params() + .map(|param| { + Some( + param + .pat()? + .syntax() + .descendants() + .find_map(ast::Name::cast)? + .text() + .to_string(), + ) + }) + .map(|param| param.unwrap_or_default()), + ); } res } -- cgit v1.2.3