aboutsummaryrefslogtreecommitdiff
path: root/crates/ra_analysis/src/hover.rs
diff options
context:
space:
mode:
authorFlorian Diebold <[email protected]>2019-01-06 23:03:30 +0000
committerFlorian Diebold <[email protected]>2019-01-06 23:05:19 +0000
commit2dfb5e6ac03e9cc6973dffe9ad69e858510604ee (patch)
tree7c33751c8d61debbed276bd1e56046ce230c43e5 /crates/ra_analysis/src/hover.rs
parent71f7d82e45145281b9aec5bcdc694524864e552b (diff)
Improve types for node_expr / node_pat
Diffstat (limited to 'crates/ra_analysis/src/hover.rs')
-rw-r--r--crates/ra_analysis/src/hover.rs4
1 files changed, 2 insertions, 2 deletions
diff --git a/crates/ra_analysis/src/hover.rs b/crates/ra_analysis/src/hover.rs
index 067e5c12d..06632df4f 100644
--- a/crates/ra_analysis/src/hover.rs
+++ b/crates/ra_analysis/src/hover.rs
@@ -65,9 +65,9 @@ pub(crate) fn type_of(db: &RootDatabase, frange: FileRange) -> Cancelable<Option
65 )?); 65 )?);
66 let infer = function.infer(db)?; 66 let infer = function.infer(db)?;
67 let syntax_mapping = function.body_syntax_mapping(db)?; 67 let syntax_mapping = function.body_syntax_mapping(db)?;
68 if let Some(expr) = syntax_mapping.node_expr(node) { 68 if let Some(expr) = ast::Expr::cast(node).and_then(|e| syntax_mapping.node_expr(e)) {
69 Ok(Some(infer[expr].to_string())) 69 Ok(Some(infer[expr].to_string()))
70 } else if let Some(pat) = syntax_mapping.node_pat(node) { 70 } else if let Some(pat) = ast::Pat::cast(node).and_then(|p| syntax_mapping.node_pat(p)) {
71 Ok(Some(infer[pat].to_string())) 71 Ok(Some(infer[pat].to_string()))
72 } else { 72 } else {
73 Ok(None) 73 Ok(None)