diff options
| author | Kyuuhachi <caagr98@gmail.com> | 2023-11-23 01:56:09 +0100 |
|---|---|---|
| committer | Kyuuhachi <caagr98@gmail.com> | 2023-11-23 16:04:10 +0100 |
| commit | a21d7713db7c19d126cc4dd38abd56ed73bdb729 (patch) | |
| tree | 4fe8d6210e448b0ce51766f007d9dd725b80d3e1 | |
| parent | 1e9dda77b5b8e690c7e21871bbd2dcf182e1a841 (diff) | |
| download | rust-a21d7713db7c19d126cc4dd38abd56ed73bdb729.tar.gz rust-a21d7713db7c19d126cc4dd38abd56ed73bdb729.zip | |
Don't print "private fields" on empty tuple structs
Test for presence rather than absence Remove redundant tests Issues in those parts will likely be caught by other parts of the test suite.
| -rw-r--r-- | src/librustdoc/html/render/print_item.rs | 14 | ||||
| -rw-r--r-- | tests/rustdoc/issue-118180-empty-tuple-struct.rs | 9 |
2 files changed, 18 insertions, 5 deletions
diff --git a/src/librustdoc/html/render/print_item.rs b/src/librustdoc/html/render/print_item.rs index 8fdbef65135..927bec4251e 100644 --- a/src/librustdoc/html/render/print_item.rs +++ b/src/librustdoc/html/render/print_item.rs @@ -1501,8 +1501,10 @@ fn print_tuple_struct_fields<'a, 'cx: 'a>( s: &'a [clean::Item], ) -> impl fmt::Display + 'a + Captures<'cx> { display_fn(|f| { - if s.iter() - .all(|field| matches!(*field.kind, clean::StrippedItem(box clean::StructFieldItem(..)))) + if !s.is_empty() + && s.iter().all(|field| { + matches!(*field.kind, clean::StrippedItem(box clean::StructFieldItem(..))) + }) { return f.write_str("/* private fields */"); } @@ -2275,9 +2277,11 @@ fn render_struct_fields( } Some(CtorKind::Fn) => { w.write_str("("); - if fields.iter().all(|field| { - matches!(*field.kind, clean::StrippedItem(box clean::StructFieldItem(..))) - }) { + if !fields.is_empty() + && fields.iter().all(|field| { + matches!(*field.kind, clean::StrippedItem(box clean::StructFieldItem(..))) + }) + { write!(w, "/* private fields */"); } else { for (i, field) in fields.iter().enumerate() { diff --git a/tests/rustdoc/issue-118180-empty-tuple-struct.rs b/tests/rustdoc/issue-118180-empty-tuple-struct.rs new file mode 100644 index 00000000000..bc6ddbe5def --- /dev/null +++ b/tests/rustdoc/issue-118180-empty-tuple-struct.rs @@ -0,0 +1,9 @@ +// @has issue_118180_empty_tuple_struct/enum.Enum.html +pub enum Enum { + // @has - '//*[@id="variant.Empty"]//h3' 'Empty()' + Empty(), +} + +// @has issue_118180_empty_tuple_struct/struct.Empty.html +// @has - '//pre/code' 'Empty()' +pub struct Empty(); |
