@@ -54,7 +54,7 @@ pub(crate) fn clean_doc_module<'tcx>(doc: &DocModule<'tcx>, cx: &mut DocContext<
5454 let mut inserted = FxHashSet::default();
5555 items.extend(doc.foreigns.iter().map(|(item, renamed)| {
5656 let item = clean_maybe_renamed_foreign_item(cx, item, *renamed);
57- if let Some(name) = item.name && !item.is_doc_hidden() {
57+ if let Some(name) = item.name && (cx.render_options.document_hidden || !item.is_doc_hidden() ) {
5858 inserted.insert((item.type_(), name));
5959 }
6060 item
@@ -64,7 +64,7 @@ pub(crate) fn clean_doc_module<'tcx>(doc: &DocModule<'tcx>, cx: &mut DocContext<
6464 return None;
6565 }
6666 let item = clean_doc_module(x, cx);
67- if item.is_doc_hidden() {
67+ if !cx.render_options.document_hidden && item.is_doc_hidden() {
6868 // Hidden modules are stripped at a later stage.
6969 // If a hidden module has the same name as a visible one, we want
7070 // to keep both of them around.
@@ -85,7 +85,7 @@ pub(crate) fn clean_doc_module<'tcx>(doc: &DocModule<'tcx>, cx: &mut DocContext<
8585 }
8686 let v = clean_maybe_renamed_item(cx, item, *renamed, *import_id);
8787 for item in &v {
88- if let Some(name) = item.name && !item.is_doc_hidden() {
88+ if let Some(name) = item.name && (cx.render_options.document_hidden || !item.is_doc_hidden() ) {
8989 inserted.insert((item.type_(), name));
9090 }
9191 }
@@ -2323,7 +2323,7 @@ fn get_all_import_attributes<'hir>(
23232323 attrs = import_attrs.iter().map(|attr| (Cow::Borrowed(attr), Some(def_id))).collect();
23242324 first = false;
23252325 // We don't add attributes of an intermediate re-export if it has `#[doc(hidden)]`.
2326- } else if !cx.tcx.is_doc_hidden(def_id) {
2326+ } else if cx.render_options.document_hidden || !cx.tcx.is_doc_hidden(def_id) {
23272327 add_without_unwanted_attributes(&mut attrs, import_attrs, is_inline, Some(def_id));
23282328 }
23292329 }
0 commit comments