@@ -955,32 +955,20 @@ fn assoc_method(
955
955
/// consequence of the above rules.
956
956
fn render_stability_since_raw_with_extra (
957
957
w : & mut Buffer ,
958
- ver : Option < StableSince > ,
958
+ stable_version : Option < StableSince > ,
959
959
const_stability : Option < ConstStability > ,
960
- containing_ver : Option < StableSince > ,
961
- containing_const_ver : Option < StableSince > ,
962
960
extra_class : & str ,
963
961
) -> bool {
964
- let stable_version = if ver != containing_ver
965
- && let Some ( ver) = & ver
966
- {
967
- since_to_string ( ver)
968
- } else {
969
- None
970
- } ;
971
-
972
962
let mut title = String :: new ( ) ;
973
963
let mut stability = String :: new ( ) ;
974
964
975
- if let Some ( ver ) = stable_version {
976
- stability. push_str ( ver . as_str ( ) ) ;
977
- title. push_str ( & format ! ( "Stable since Rust version {ver }" ) ) ;
965
+ if let Some ( version ) = stable_version. and_then ( |version| since_to_string ( & version ) ) {
966
+ stability. push_str ( & version ) ;
967
+ title. push_str ( & format ! ( "Stable since Rust version {version }" ) ) ;
978
968
}
979
969
980
970
let const_title_and_stability = match const_stability {
981
- Some ( ConstStability { level : StabilityLevel :: Stable { since, .. } , .. } )
982
- if Some ( since) != containing_const_ver =>
983
- {
971
+ Some ( ConstStability { level : StabilityLevel :: Stable { since, .. } , .. } ) => {
984
972
since_to_string ( & since)
985
973
. map ( |since| ( format ! ( "const since {since}" ) , format ! ( "const: {since}" ) ) )
986
974
}
@@ -1035,17 +1023,8 @@ fn render_stability_since_raw(
1035
1023
w : & mut Buffer ,
1036
1024
ver : Option < StableSince > ,
1037
1025
const_stability : Option < ConstStability > ,
1038
- containing_ver : Option < StableSince > ,
1039
- containing_const_ver : Option < StableSince > ,
1040
1026
) -> bool {
1041
- render_stability_since_raw_with_extra (
1042
- w,
1043
- ver,
1044
- const_stability,
1045
- containing_ver,
1046
- containing_const_ver,
1047
- "" ,
1048
- )
1027
+ render_stability_since_raw_with_extra ( w, ver, const_stability, "" )
1049
1028
}
1050
1029
1051
1030
fn render_assoc_item (
@@ -1535,7 +1514,6 @@ fn render_impl(
1535
1514
cx : & mut Context < ' _ > ,
1536
1515
item : & clean:: Item ,
1537
1516
parent : & clean:: Item ,
1538
- containing_item : & clean:: Item ,
1539
1517
link : AssocItemLink < ' _ > ,
1540
1518
render_mode : RenderMode ,
1541
1519
is_default_item : bool ,
@@ -1630,7 +1608,7 @@ fn render_impl(
1630
1608
} )
1631
1609
. map ( |item| format ! ( "{}.{name}" , item. type_( ) ) ) ;
1632
1610
write ! ( w, "<section id=\" {id}\" class=\" {item_type}{in_trait_class}\" >" ) ;
1633
- render_rightside ( w, cx, item, containing_item , render_mode) ;
1611
+ render_rightside ( w, cx, item, render_mode) ;
1634
1612
if trait_. is_some ( ) {
1635
1613
// Anchors are only used on trait impls.
1636
1614
write ! ( w, "<a href=\" #{id}\" class=\" anchor\" >§</a>" ) ;
@@ -1652,7 +1630,7 @@ fn render_impl(
1652
1630
let source_id = format ! ( "{item_type}.{name}" ) ;
1653
1631
let id = cx. derive_id ( & source_id) ;
1654
1632
write ! ( w, "<section id=\" {id}\" class=\" {item_type}{in_trait_class}\" >" ) ;
1655
- render_rightside ( w, cx, item, containing_item , render_mode) ;
1633
+ render_rightside ( w, cx, item, render_mode) ;
1656
1634
if trait_. is_some ( ) {
1657
1635
// Anchors are only used on trait impls.
1658
1636
write ! ( w, "<a href=\" #{id}\" class=\" anchor\" >§</a>" ) ;
@@ -1738,7 +1716,6 @@ fn render_impl(
1738
1716
cx,
1739
1717
trait_item,
1740
1718
if trait_. is_some ( ) { & i. impl_item } else { parent } ,
1741
- parent,
1742
1719
link,
1743
1720
render_mode,
1744
1721
false ,
@@ -1754,7 +1731,6 @@ fn render_impl(
1754
1731
t : & clean:: Trait ,
1755
1732
i : & clean:: Impl ,
1756
1733
parent : & clean:: Item ,
1757
- containing_item : & clean:: Item ,
1758
1734
render_mode : RenderMode ,
1759
1735
rendering_params : ImplRenderingParameters ,
1760
1736
) {
@@ -1782,7 +1758,6 @@ fn render_impl(
1782
1758
cx,
1783
1759
trait_item,
1784
1760
parent,
1785
- containing_item,
1786
1761
assoc_link,
1787
1762
render_mode,
1788
1763
true ,
@@ -1805,7 +1780,6 @@ fn render_impl(
1805
1780
t,
1806
1781
i. inner_impl ( ) ,
1807
1782
& i. impl_item ,
1808
- parent,
1809
1783
render_mode,
1810
1784
rendering_params,
1811
1785
) ;
@@ -1827,7 +1801,6 @@ fn render_impl(
1827
1801
cx,
1828
1802
i,
1829
1803
parent,
1830
- parent,
1831
1804
rendering_params. show_def_docs ,
1832
1805
use_absolute,
1833
1806
aliases,
@@ -1875,20 +1848,14 @@ fn render_impl(
1875
1848
1876
1849
// Render the items that appear on the right side of methods, impls, and
1877
1850
// associated types. For example "1.0.0 (const: 1.39.0) · source".
1878
- fn render_rightside (
1879
- w : & mut Buffer ,
1880
- cx : & Context < ' _ > ,
1881
- item : & clean:: Item ,
1882
- containing_item : & clean:: Item ,
1883
- render_mode : RenderMode ,
1884
- ) {
1851
+ fn render_rightside ( w : & mut Buffer , cx : & Context < ' _ > , item : & clean:: Item , render_mode : RenderMode ) {
1885
1852
let tcx = cx. tcx ( ) ;
1886
1853
1887
1854
// FIXME: Once https://github.com/rust-lang/rust/issues/67792 is implemented, we can remove
1888
1855
// this condition.
1889
- let ( const_stability, const_stable_since ) = match render_mode {
1890
- RenderMode :: Normal => ( item. const_stability ( tcx) , containing_item . const_stable_since ( tcx ) ) ,
1891
- RenderMode :: ForDeref { .. } => ( None , None ) ,
1856
+ let const_stability = match render_mode {
1857
+ RenderMode :: Normal => item. const_stability ( tcx) ,
1858
+ RenderMode :: ForDeref { .. } => None ,
1892
1859
} ;
1893
1860
let src_href = cx. src_href ( item) ;
1894
1861
let has_src_ref = src_href. is_some ( ) ;
@@ -1898,8 +1865,6 @@ fn render_rightside(
1898
1865
& mut rightside,
1899
1866
item. stable_since ( tcx) ,
1900
1867
const_stability,
1901
- containing_item. stable_since ( tcx) ,
1902
- const_stable_since,
1903
1868
if has_src_ref { "" } else { " rightside" } ,
1904
1869
) ;
1905
1870
if let Some ( link) = src_href {
@@ -1921,7 +1886,6 @@ pub(crate) fn render_impl_summary(
1921
1886
cx : & mut Context < ' _ > ,
1922
1887
i : & Impl ,
1923
1888
parent : & clean:: Item ,
1924
- containing_item : & clean:: Item ,
1925
1889
show_def_docs : bool ,
1926
1890
use_absolute : Option < bool > ,
1927
1891
// This argument is used to reference same type with different paths to avoid duplication
@@ -1936,7 +1900,7 @@ pub(crate) fn render_impl_summary(
1936
1900
format ! ( " data-aliases=\" {}\" " , aliases. join( "," ) )
1937
1901
} ;
1938
1902
write ! ( w, "<section id=\" {id}\" class=\" impl\" {aliases}>" ) ;
1939
- render_rightside ( w, cx, & i. impl_item , containing_item , RenderMode :: Normal ) ;
1903
+ render_rightside ( w, cx, & i. impl_item , RenderMode :: Normal ) ;
1940
1904
write ! (
1941
1905
w,
1942
1906
"<a href=\" #{id}\" class=\" anchor\" >§</a>\
0 commit comments