@@ -1818,7 +1818,7 @@ fn item_module(w: &mut fmt::Formatter, cx: &Context,
1818
1818
write ! ( w, "
1819
1819
<tr class='{stab} module-item'>
1820
1820
<td><a class='{class}' href='{href}'
1821
- title='{title}'>{name}</a>{unsafety_flag}</td>
1821
+ title='{title_type} { title}'>{name}</a>{unsafety_flag}</td>
1822
1822
<td class='docblock-short'>
1823
1823
{stab_docs} {docs}
1824
1824
</td>
@@ -1827,9 +1827,10 @@ fn item_module(w: &mut fmt::Formatter, cx: &Context,
1827
1827
stab_docs = stab_docs,
1828
1828
docs = shorter( Some ( & Markdown ( doc_value) . to_string( ) ) ) ,
1829
1829
class = myitem. type_( ) ,
1830
- stab = myitem. stability_class( ) ,
1830
+ stab = myitem. stability_class( ) . unwrap_or ( "" . to_string ( ) ) ,
1831
1831
unsafety_flag = unsafety_flag,
1832
1832
href = item_path( myitem. type_( ) , myitem. name. as_ref( ) . unwrap( ) ) ,
1833
+ title_type = myitem. type_( ) ,
1833
1834
title = full_path( cx, myitem) ) ?;
1834
1835
}
1835
1836
}
@@ -1936,7 +1937,9 @@ impl<'a> fmt::Display for Initializer<'a> {
1936
1937
1937
1938
fn item_constant ( w : & mut fmt:: Formatter , cx : & Context , it : & clean:: Item ,
1938
1939
c : & clean:: Constant ) -> fmt:: Result {
1939
- write ! ( w, "<pre class='rust const'>{vis}const \
1940
+ write ! ( w, "<pre class='rust const'>" ) ?;
1941
+ render_attributes ( w, it) ?;
1942
+ write ! ( w, "{vis}const \
1940
1943
{name}: {typ}{init}</pre>",
1941
1944
vis = VisSpace ( & it. visibility) ,
1942
1945
name = it. name. as_ref( ) . unwrap( ) ,
@@ -1947,7 +1950,9 @@ fn item_constant(w: &mut fmt::Formatter, cx: &Context, it: &clean::Item,
1947
1950
1948
1951
fn item_static ( w : & mut fmt:: Formatter , cx : & Context , it : & clean:: Item ,
1949
1952
s : & clean:: Static ) -> fmt:: Result {
1950
- write ! ( w, "<pre class='rust static'>{vis}static {mutability}\
1953
+ write ! ( w, "<pre class='rust static'>" ) ?;
1954
+ render_attributes ( w, it) ?;
1955
+ write ! ( w, "{vis}static {mutability}\
1951
1956
{name}: {typ}{init}</pre>",
1952
1957
vis = VisSpace ( & it. visibility) ,
1953
1958
mutability = MutableSpace ( s. mutability) ,
@@ -1971,7 +1976,9 @@ fn item_function(w: &mut fmt::Formatter, cx: &Context, it: &clean::Item,
1971
1976
AbiSpace ( f. abi) ,
1972
1977
it. name. as_ref( ) . unwrap( ) ,
1973
1978
f. generics) . len ( ) ;
1974
- write ! ( w, "<pre class='rust fn'>{vis}{constness}{unsafety}{abi}fn \
1979
+ write ! ( w, "<pre class='rust fn'>" ) ?;
1980
+ render_attributes ( w, it) ?;
1981
+ write ! ( w, "{vis}{constness}{unsafety}{abi}fn \
1975
1982
{name}{generics}{decl}{where_clause}</pre>",
1976
1983
vis = VisSpace ( & it. visibility) ,
1977
1984
constness = ConstnessSpace ( vis_constness) ,
@@ -2006,7 +2013,9 @@ fn item_trait(w: &mut fmt::Formatter, cx: &Context, it: &clean::Item,
2006
2013
}
2007
2014
2008
2015
// Output the trait definition
2009
- write ! ( w, "<pre class='rust trait'>{}{}trait {}{}{}{} " ,
2016
+ write ! ( w, "<pre class='rust trait'>" ) ?;
2017
+ render_attributes ( w, it) ?;
2018
+ write ! ( w, "{}{}trait {}{}{}{} " ,
2010
2019
VisSpace ( & it. visibility) ,
2011
2020
UnsafetySpace ( t. unsafety) ,
2012
2021
it. name. as_ref( ) . unwrap( ) ,
@@ -2369,13 +2378,16 @@ fn item_struct(w: &mut fmt::Formatter, cx: &Context, it: &clean::Item,
2369
2378
write ! ( w, "<span id='{id}' class='{item_type}'>
2370
2379
<span id='{ns_id}' class='invisible'>
2371
2380
<code>{name}: {ty}</code>
2372
- </span></span><span class='stab {stab}'></span> " ,
2381
+ </span></span>" ,
2373
2382
item_type = ItemType :: StructField ,
2374
2383
id = id,
2375
2384
ns_id = ns_id,
2376
- stab = field. stability_class( ) ,
2377
2385
name = field. name. as_ref( ) . unwrap( ) ,
2378
2386
ty = ty) ?;
2387
+ if let Some ( stability_class) = field. stability_class ( ) {
2388
+ write ! ( w, "<span class='stab {stab}'></span>" ,
2389
+ stab = stability_class) ?;
2390
+ }
2379
2391
document ( w, cx, field) ?;
2380
2392
}
2381
2393
}
@@ -2406,11 +2418,14 @@ fn item_union(w: &mut fmt::Formatter, cx: &Context, it: &clean::Item,
2406
2418
write ! ( w, "<h2 class='fields'>Fields</h2>" ) ?;
2407
2419
for ( field, ty) in fields {
2408
2420
write ! ( w, "<span id='{shortty}.{name}' class='{shortty}'><code>{name}: {ty}</code>
2409
- </span><span class='stab {stab}'></span> " ,
2421
+ </span>" ,
2410
2422
shortty = ItemType :: StructField ,
2411
- stab = field. stability_class( ) ,
2412
2423
name = field. name. as_ref( ) . unwrap( ) ,
2413
2424
ty = ty) ?;
2425
+ if let Some ( stability_class) = field. stability_class ( ) {
2426
+ write ! ( w, "<span class='stab {stab}'></span>" ,
2427
+ stab = stability_class) ?;
2428
+ }
2414
2429
document ( w, cx, field) ?;
2415
2430
}
2416
2431
}
@@ -3001,7 +3016,9 @@ fn render_impl(w: &mut fmt::Formatter, cx: &Context, i: &Impl, link: AssocItemLi
3001
3016
fn item_typedef ( w : & mut fmt:: Formatter , cx : & Context , it : & clean:: Item ,
3002
3017
t : & clean:: Typedef ) -> fmt:: Result {
3003
3018
let indent = format ! ( "type {}{:#} " , it. name. as_ref( ) . unwrap( ) , t. generics) . len ( ) ;
3004
- write ! ( w, "<pre class='rust typedef'>type {}{}{where_clause} = {type_};</pre>" ,
3019
+ write ! ( w, "<pre class='rust typedef'>" ) ?;
3020
+ render_attributes ( w, it) ?;
3021
+ write ! ( w, "type {}{}{where_clause} = {type_};</pre>" ,
3005
3022
it. name. as_ref( ) . unwrap( ) ,
3006
3023
t. generics,
3007
3024
where_clause = WhereClause ( & t. generics, indent) ,
0 commit comments