aboutsummaryrefslogtreecommitdiff
path: root/crates/ra_ide_api/src/display
diff options
context:
space:
mode:
authorFlorian Diebold <[email protected]>2019-09-14 15:26:03 +0100
committerFlorian Diebold <[email protected]>2019-09-17 18:47:45 +0100
commit828d60574f8ecbc33fe4987913c6f713e41af1ae (patch)
treecd51badc345665f6d1ea5eb09cb9a00ff4093b73 /crates/ra_ide_api/src/display
parent913ab1ec0ad10873134ca429c1496806a9261206 (diff)
Refactor a bit to prepare for resolving trait assoc items
Diffstat (limited to 'crates/ra_ide_api/src/display')
-rw-r--r--crates/ra_ide_api/src/display/navigation_target.rs15
1 files changed, 9 insertions, 6 deletions
diff --git a/crates/ra_ide_api/src/display/navigation_target.rs b/crates/ra_ide_api/src/display/navigation_target.rs
index 03382ab3c..11f73ccfd 100644
--- a/crates/ra_ide_api/src/display/navigation_target.rs
+++ b/crates/ra_ide_api/src/display/navigation_target.rs
@@ -1,4 +1,4 @@
1use hir::{FieldSource, HasSource, ImplItem, ModuleSource}; 1use hir::{AssocItem, FieldSource, HasSource, ModuleSource};
2use ra_db::{FileId, SourceDatabase}; 2use ra_db::{FileId, SourceDatabase};
3use ra_syntax::{ 3use ra_syntax::{
4 algo::visit::{visitor, Visitor}, 4 algo::visit::{visitor, Visitor},
@@ -221,11 +221,14 @@ impl NavigationTarget {
221 ) 221 )
222 } 222 }
223 223
224 pub(crate) fn from_impl_item(db: &RootDatabase, impl_item: hir::ImplItem) -> NavigationTarget { 224 pub(crate) fn from_assoc_item(
225 match impl_item { 225 db: &RootDatabase,
226 ImplItem::Method(it) => NavigationTarget::from_def_source(db, it), 226 assoc_item: hir::AssocItem,
227 ImplItem::Const(it) => NavigationTarget::from_def_source(db, it), 227 ) -> NavigationTarget {
228 ImplItem::TypeAlias(it) => NavigationTarget::from_def_source(db, it), 228 match assoc_item {
229 AssocItem::Function(it) => NavigationTarget::from_def_source(db, it),
230 AssocItem::Const(it) => NavigationTarget::from_def_source(db, it),
231 AssocItem::TypeAlias(it) => NavigationTarget::from_def_source(db, it),
229 } 232 }
230 } 233 }
231 234