diff options
Diffstat (limited to 'crates/ra_ide_api/src/goto_type_definition.rs')
-rw-r--r-- | crates/ra_ide_api/src/goto_type_definition.rs | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/crates/ra_ide_api/src/goto_type_definition.rs b/crates/ra_ide_api/src/goto_type_definition.rs index 28a83a3e2..992a08809 100644 --- a/crates/ra_ide_api/src/goto_type_definition.rs +++ b/crates/ra_ide_api/src/goto_type_definition.rs | |||
@@ -24,7 +24,7 @@ pub(crate) fn goto_type_definition( | |||
24 | 24 | ||
25 | let analyzer = hir::SourceAnalyzer::new(db, token.with_value(&node), None); | 25 | let analyzer = hir::SourceAnalyzer::new(db, token.with_value(&node), None); |
26 | 26 | ||
27 | let ty: hir::Ty = if let Some(ty) = | 27 | let ty: hir::Type = if let Some(ty) = |
28 | ast::Expr::cast(node.clone()).and_then(|e| analyzer.type_of(db, &e)) | 28 | ast::Expr::cast(node.clone()).and_then(|e| analyzer.type_of(db, &e)) |
29 | { | 29 | { |
30 | ty | 30 | ty |
@@ -35,7 +35,7 @@ pub(crate) fn goto_type_definition( | |||
35 | return None; | 35 | return None; |
36 | }; | 36 | }; |
37 | 37 | ||
38 | let adt_def = analyzer.autoderef(db, ty).find_map(|ty| ty.as_adt().map(|adt| adt.0))?; | 38 | let adt_def = ty.autoderef(db).find_map(|ty| ty.as_adt())?; |
39 | 39 | ||
40 | let nav = adt_def.to_nav(db); | 40 | let nav = adt_def.to_nav(db); |
41 | Some(RangeInfo::new(node.text_range(), vec![nav])) | 41 | Some(RangeInfo::new(node.text_range(), vec![nav])) |