Unnamed repository; edit this file 'description' to name the repository.
Diffstat (limited to 'crates/ide/src/doc_links.rs')
-rw-r--r--crates/ide/src/doc_links.rs8
1 files changed, 3 insertions, 5 deletions
diff --git a/crates/ide/src/doc_links.rs b/crates/ide/src/doc_links.rs
index a5d9a10d2e..c197d559aa 100644
--- a/crates/ide/src/doc_links.rs
+++ b/crates/ide/src/doc_links.rs
@@ -225,7 +225,6 @@ pub(crate) fn resolve_doc_path_for_def(
Definition::Const(it) => it.resolve_doc_path(db, link, ns, is_inner_doc),
Definition::Static(it) => it.resolve_doc_path(db, link, ns, is_inner_doc),
Definition::Trait(it) => it.resolve_doc_path(db, link, ns, is_inner_doc),
- Definition::TraitAlias(it) => it.resolve_doc_path(db, link, ns, is_inner_doc),
Definition::TypeAlias(it) => it.resolve_doc_path(db, link, ns, is_inner_doc),
Definition::Macro(it) => it.resolve_doc_path(db, link, ns, is_inner_doc),
Definition::Field(it) => it.resolve_doc_path(db, link, ns, is_inner_doc),
@@ -390,7 +389,8 @@ fn get_doc_links(
let (mut web_url, mut local_url) = get_doc_base_urls(db, target, target_dir, sysroot);
- if let Some(path) = mod_path_of_def(db, target) {
+ let append_mod = !matches!(def, Definition::Macro(m) if m.is_macro_export(db));
+ if append_mod && let Some(path) = mod_path_of_def(db, target) {
web_url = join_url(web_url, &path);
local_url = join_url(local_url, &path);
}
@@ -670,11 +670,9 @@ fn filename_and_frag_for_def(
None => String::from("index.html"),
},
Definition::Trait(t) => {
+ // FIXME(trait-alias): url should be traitalias. for aliases
format!("trait.{}.html", t.name(db).as_str())
}
- Definition::TraitAlias(t) => {
- format!("traitalias.{}.html", t.name(db).as_str())
- }
Definition::TypeAlias(t) => {
format!("type.{}.html", t.name(db).as_str())
}