diff options
| author | Yotam Ofek <yotam.ofek@gmail.com> | 2025-02-10 17:37:33 +0000 |
|---|---|---|
| committer | Yotam Ofek <yotam.ofek@gmail.com> | 2025-02-14 14:50:05 +0000 |
| commit | 5c5763a6cfdb01016c8a0853f859d40bf50ff49c (patch) | |
| tree | 06f0e0a7b8f331677e4a98fc0a6ee79b01fdbcd4 /src/librustdoc | |
| parent | bc061858d23cd970395023626ea9e5c30675bd7a (diff) | |
| download | rust-5c5763a6cfdb01016c8a0853f859d40bf50ff49c.tar.gz rust-5c5763a6cfdb01016c8a0853f859d40bf50ff49c.zip | |
librustdoc: lazily format list of aliases in `render_impl_summary`
Diffstat (limited to 'src/librustdoc')
| -rw-r--r-- | src/librustdoc/html/render/mod.rs | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/src/librustdoc/html/render/mod.rs b/src/librustdoc/html/render/mod.rs index c8db32ebcf9..6896925753a 100644 --- a/src/librustdoc/html/render/mod.rs +++ b/src/librustdoc/html/render/mod.rs @@ -63,7 +63,7 @@ pub(crate) use self::context::*; pub(crate) use self::span_map::{LinkFromSrc, collect_spans_and_sources}; pub(crate) use self::write_shared::*; use crate::clean::{self, ItemId, RenderedLink}; -use crate::display::MaybeDisplay as _; +use crate::display::{Joined as _, MaybeDisplay as _}; use crate::error::Error; use crate::formats::Impl; use crate::formats::cache::Cache; @@ -2142,11 +2142,11 @@ pub(crate) fn render_impl_summary( ) { let inner_impl = i.inner_impl(); let id = cx.derive_id(get_id_for_impl(cx.tcx(), i.impl_item.item_id)); - let aliases = if aliases.is_empty() { - String::new() - } else { - format!(" data-aliases=\"{}\"", aliases.join(",")) - }; + let aliases = (!aliases.is_empty()) + .then_some(fmt::from_fn(|f| { + write!(f, " data-aliases=\"{}\"", fmt::from_fn(|f| aliases.iter().joined(",", f))) + })) + .maybe_display(); write_str(w, format_args!("<section id=\"{id}\" class=\"impl\"{aliases}>")); render_rightside(w, cx, &i.impl_item, RenderMode::Normal); write_str( |
