aboutsummaryrefslogtreecommitdiff
path: root/crates/ide/src/display/navigation_target.rs
diff options
context:
space:
mode:
Diffstat (limited to 'crates/ide/src/display/navigation_target.rs')
-rw-r--r--crates/ide/src/display/navigation_target.rs10
1 files changed, 9 insertions, 1 deletions
diff --git a/crates/ide/src/display/navigation_target.rs b/crates/ide/src/display/navigation_target.rs
index 522607cb7..48acb8c93 100644
--- a/crates/ide/src/display/navigation_target.rs
+++ b/crates/ide/src/display/navigation_target.rs
@@ -155,7 +155,15 @@ impl ToNav for FileSymbol {
155impl TryToNav for Definition { 155impl TryToNav for Definition {
156 fn try_to_nav(&self, db: &RootDatabase) -> Option<NavigationTarget> { 156 fn try_to_nav(&self, db: &RootDatabase) -> Option<NavigationTarget> {
157 match self { 157 match self {
158 Definition::Macro(it) => Some(it.to_nav(db)), 158 Definition::Macro(it) => {
159 // FIXME: Currently proc-macro do not have ast-node,
160 // such that it does not have source
161 // more discussion: https://github.com/rust-analyzer/rust-analyzer/issues/6913
162 if it.is_proc_macro() {
163 return None;
164 }
165 Some(it.to_nav(db))
166 }
159 Definition::Field(it) => Some(it.to_nav(db)), 167 Definition::Field(it) => Some(it.to_nav(db)),
160 Definition::ModuleDef(it) => it.try_to_nav(db), 168 Definition::ModuleDef(it) => it.try_to_nav(db),
161 Definition::SelfType(it) => Some(it.to_nav(db)), 169 Definition::SelfType(it) => Some(it.to_nav(db)),