Rollup merge of #108734 - clubby789:rustdoc-layout-uninhabited, r=GuillaumeGomez
rustdoc: Note in a type's layout/size if it is uninhabited Closes #87008 
This commit is contained in:
commit
99fad38b19
@ -1839,6 +1839,12 @@ fn document_type_layout(w: &mut Buffer, cx: &Context<'_>, ty_def_id: DefId) {
|
|||||||
} else {
|
} else {
|
||||||
let size = layout.size.bytes() - tag_size;
|
let size = layout.size.bytes() - tag_size;
|
||||||
write!(w, "{size} byte{pl}", pl = if size == 1 { "" } else { "s" },);
|
write!(w, "{size} byte{pl}", pl = if size == 1 { "" } else { "s" },);
|
||||||
|
if layout.abi.is_uninhabited() {
|
||||||
|
write!(
|
||||||
|
w,
|
||||||
|
" (<a href=\"https://doc.rust-lang.org/stable/reference/glossary.html#uninhabited\">uninhabited</a>)"
|
||||||
|
);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -83,3 +83,11 @@ pub enum WithNiche {
|
|||||||
None,
|
None,
|
||||||
Some(std::num::NonZeroU32),
|
Some(std::num::NonZeroU32),
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// @hasraw type_layout/enum.Uninhabited.html 'Size: '
|
||||||
|
// @hasraw - '0 bytes (<a href="https://doc.rust-lang.org/stable/reference/glossary.html#uninhabited">uninhabited</a>)'
|
||||||
|
pub enum Uninhabited {}
|
||||||
|
|
||||||
|
// @hasraw type_layout/struct.Uninhabited2.html 'Size: '
|
||||||
|
// @hasraw - '8 bytes (<a href="https://doc.rust-lang.org/stable/reference/glossary.html#uninhabited">uninhabited</a>)'
|
||||||
|
pub struct Uninhabited2(std::convert::Infallible, u64);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user