diff options
-rw-r--r-- | crates/ra_ide/src/hover.rs | 16 | ||||
-rw-r--r-- | crates/ra_proc_macro_srv/src/tests/mod.rs | 2 |
2 files changed, 10 insertions, 8 deletions
diff --git a/crates/ra_ide/src/hover.rs b/crates/ra_ide/src/hover.rs index 78a661c85..f36b9de7e 100644 --- a/crates/ra_ide/src/hover.rs +++ b/crates/ra_ide/src/hover.rs | |||
@@ -3,8 +3,8 @@ use std::iter::once; | |||
3 | 3 | ||
4 | use hir::{ | 4 | use hir::{ |
5 | db::DefDatabase, Adt, AsAssocItem, AsName, AssocItemContainer, AttrDef, Crate, Documentation, | 5 | db::DefDatabase, Adt, AsAssocItem, AsName, AssocItemContainer, AttrDef, Crate, Documentation, |
6 | FieldSource, HasSource, HirDisplay, Hygiene, ItemInNs, ModPath, ModuleDef, ModuleSource, | 6 | FieldSource, HasSource, HirDisplay, Hygiene, ItemInNs, ModPath, Module, ModuleDef, |
7 | Semantics, Module | 7 | ModuleSource, Semantics, |
8 | }; | 8 | }; |
9 | use itertools::Itertools; | 9 | use itertools::Itertools; |
10 | use lazy_static::lazy_static; | 10 | use lazy_static::lazy_static; |
@@ -16,9 +16,7 @@ use ra_ide_db::{ | |||
16 | defs::{classify_name, classify_name_ref, Definition}, | 16 | defs::{classify_name, classify_name_ref, Definition}, |
17 | RootDatabase, | 17 | RootDatabase, |
18 | }; | 18 | }; |
19 | use ra_syntax::{ | 19 | use ra_syntax::{ast, ast::Path, match_ast, AstNode, SyntaxKind::*, SyntaxToken, TokenAtOffset}; |
20 | ast, ast::Path, match_ast, AstNode, SyntaxKind::*, SyntaxToken, TokenAtOffset, | ||
21 | }; | ||
22 | use ra_tt::{Ident, Leaf, Literal, TokenTree}; | 20 | use ra_tt::{Ident, Leaf, Literal, TokenTree}; |
23 | use url::Url; | 21 | use url::Url; |
24 | 22 | ||
@@ -441,8 +439,9 @@ fn rewrite_links(db: &RootDatabase, markdown: &str, definition: &Definition) -> | |||
441 | // Two posibilities: | 439 | // Two posibilities: |
442 | // * path-based links: `../../module/struct.MyStruct.html` | 440 | // * path-based links: `../../module/struct.MyStruct.html` |
443 | // * module-based links (AKA intra-doc links): `super::super::module::MyStruct` | 441 | // * module-based links (AKA intra-doc links): `super::super::module::MyStruct` |
444 | let resolved = try_resolve_intra(db, definition, title, &target) | 442 | let resolved = try_resolve_intra(db, definition, title, &target).or_else(|| { |
445 | .or_else(|| try_resolve_path(db, definition, &target).map(|target| (target, title.to_string()))); | 443 | try_resolve_path(db, definition, &target).map(|target| (target, title.to_string())) |
444 | }); | ||
446 | 445 | ||
447 | if let Some((target, title)) = resolved { | 446 | if let Some((target, title)) = resolved { |
448 | (target, title) | 447 | (target, title) |
@@ -575,7 +574,8 @@ fn try_resolve_intra( | |||
575 | .join(&get_symbol_filename(db, &Definition::ModuleDef(def))?) | 574 | .join(&get_symbol_filename(db, &Definition::ModuleDef(def))?) |
576 | .ok()? | 575 | .ok()? |
577 | .into_string(), | 576 | .into_string(), |
578 | strip_prefixes_suffixes(link_text).to_string())) | 577 | strip_prefixes_suffixes(link_text).to_string(), |
578 | )) | ||
579 | } | 579 | } |
580 | 580 | ||
581 | /// Try to resolve path to local documentation via path-based links (i.e. `../gateway/struct.Shard.html`). | 581 | /// Try to resolve path to local documentation via path-based links (i.e. `../gateway/struct.Shard.html`). |
diff --git a/crates/ra_proc_macro_srv/src/tests/mod.rs b/crates/ra_proc_macro_srv/src/tests/mod.rs index 82cefbb29..1057408e5 100644 --- a/crates/ra_proc_macro_srv/src/tests/mod.rs +++ b/crates/ra_proc_macro_srv/src/tests/mod.rs | |||
@@ -6,6 +6,7 @@ use test_utils::assert_eq_text; | |||
6 | use utils::*; | 6 | use utils::*; |
7 | 7 | ||
8 | #[test] | 8 | #[test] |
9 | #[ignore] | ||
9 | fn test_derive_serialize_proc_macro() { | 10 | fn test_derive_serialize_proc_macro() { |
10 | assert_expand( | 11 | assert_expand( |
11 | "serde_derive", | 12 | "serde_derive", |
@@ -17,6 +18,7 @@ fn test_derive_serialize_proc_macro() { | |||
17 | } | 18 | } |
18 | 19 | ||
19 | #[test] | 20 | #[test] |
21 | #[ignore] | ||
20 | fn test_derive_serialize_proc_macro_failed() { | 22 | fn test_derive_serialize_proc_macro_failed() { |
21 | assert_expand( | 23 | assert_expand( |
22 | "serde_derive", | 24 | "serde_derive", |