diff --git a/src/librustdoc/html/render/print_item.rs b/src/librustdoc/html/render/print_item.rs index 67821f19a23..f2c111495ed 100644 --- a/src/librustdoc/html/render/print_item.rs +++ b/src/librustdoc/html/render/print_item.rs @@ -670,7 +670,11 @@ fn item_trait(w: &mut Buffer, cx: &Context<'_>, it: &clean::Item, t: &clean::Tra } write!(w, "
", id); write!(w, "
"); - render_stability_since(w, m, t, cx.tcx()); + + let has_stability = render_stability_since(w, m, t, cx.tcx()); + if has_stability { + w.write_str(" · "); + } write_srclink(cx, m, w); write!(w, "
"); write!(w, "

"); @@ -1457,14 +1461,14 @@ fn render_stability_since( item: &clean::Item, containing_item: &clean::Item, tcx: TyCtxt<'_>, -) { +) -> bool { render_stability_since_raw( w, item.stable_since(tcx), item.const_stability(tcx), containing_item.stable_since(tcx), containing_item.const_stable_since(tcx), - ); + ) } fn compare_impl<'a, 'b>(lhs: &'a &&Impl, rhs: &'b &&Impl, cx: &Context<'_>) -> Ordering { diff --git a/src/test/rustdoc/source-version-separator.rs b/src/test/rustdoc/source-version-separator.rs new file mode 100644 index 00000000000..45a555eaa15 --- /dev/null +++ b/src/test/rustdoc/source-version-separator.rs @@ -0,0 +1,31 @@ +#![stable(feature = "bar", since = "1.0")] +#![crate_name = "foo"] + +#![feature(staged_api)] + +// @has foo/trait.Bar.html +// @has - '//div[@class="main-heading"]/*[@class="out-of-band"]' '1.0· source · ' +#[stable(feature = "bar", since = "1.0")] +pub trait Bar { + // @has - '//div[@id="tymethod.foo"]/*[@class="rightside"]' '3.0 · source' + #[stable(feature = "foobar", since = "3.0")] + fn foo(); +} + +// @has - '//div[@id="implementors-list"]//*[@class="rightside"]' '4.0 · source' + +// @has foo/struct.Foo.html +// @has - '//div[@class="main-heading"]/*[@class="out-of-band"]' '1.0· source · ' +#[stable(feature = "baz", since = "1.0")] +pub struct Foo; + +impl Foo { + // @has - '//div[@id="method.foofoo"]/*[@class="rightside"]' '3.0 · source' + #[stable(feature = "foobar", since = "3.0")] + pub fn foofoo() {} +} + +#[stable(feature = "yolo", since = "4.0")] +impl Bar for Foo { + fn foo() {} +}