@@ -1440,23 +1440,23 @@ impl AllTypes {
1440
1440
}
1441
1441
}
1442
1442
1443
- fn append ( & mut self , item_name : String , item_type : & str ) {
1443
+ fn append ( & mut self , item_name : String , item_type : & ItemType ) {
1444
1444
let mut url: Vec < _ > = item_name. split ( "::" ) . skip ( 1 ) . collect ( ) ;
1445
1445
if let Some ( name) = url. pop ( ) {
1446
1446
let new_url = format ! ( "{}/{}.{}.html" , url. join( "/" ) , item_type, name) ;
1447
1447
url. push ( name) ;
1448
1448
let name = url. join ( "::" ) ;
1449
- match item_type {
1450
- "struct" => self . structs . insert ( ItemEntry :: new ( new_url, name) ) ,
1451
- "enum" => self . enums . insert ( ItemEntry :: new ( new_url, name) ) ,
1452
- "union" => self . unions . insert ( ItemEntry :: new ( new_url, name) ) ,
1453
- "primitive" => self . primitives . insert ( ItemEntry :: new ( new_url, name) ) ,
1454
- "trait" => self . traits . insert ( ItemEntry :: new ( new_url, name) ) ,
1455
- "macro" => self . macros . insert ( ItemEntry :: new ( new_url, name) ) ,
1456
- "fn" => self . functions . insert ( ItemEntry :: new ( new_url, name) ) ,
1457
- "typedef" => self . typedefs . insert ( ItemEntry :: new ( new_url, name) ) ,
1458
- "static" => self . statics . insert ( ItemEntry :: new ( new_url, name) ) ,
1459
- "constant" => self . constants . insert ( ItemEntry :: new ( new_url, name) ) ,
1449
+ match * item_type {
1450
+ ItemType :: Struct => self . structs . insert ( ItemEntry :: new ( new_url, name) ) ,
1451
+ ItemType :: Enum => self . enums . insert ( ItemEntry :: new ( new_url, name) ) ,
1452
+ ItemType :: Union => self . unions . insert ( ItemEntry :: new ( new_url, name) ) ,
1453
+ ItemType :: Primitive => self . primitives . insert ( ItemEntry :: new ( new_url, name) ) ,
1454
+ ItemType :: Trait => self . traits . insert ( ItemEntry :: new ( new_url, name) ) ,
1455
+ ItemType :: Macro => self . macros . insert ( ItemEntry :: new ( new_url, name) ) ,
1456
+ ItemType :: Function => self . functions . insert ( ItemEntry :: new ( new_url, name) ) ,
1457
+ ItemType :: Typedef => self . typedefs . insert ( ItemEntry :: new ( new_url, name) ) ,
1458
+ ItemType :: Static => self . statics . insert ( ItemEntry :: new ( new_url, name) ) ,
1459
+ ItemType :: Constant => self . constants . insert ( ItemEntry :: new ( new_url, name) ) ,
1460
1460
_ => true ,
1461
1461
} ;
1462
1462
}
@@ -1562,8 +1562,7 @@ impl Context {
1562
1562
}
1563
1563
}
1564
1564
1565
- let mut w = BufWriter :: new ( File :: create ( & final_file)
1566
- . expect ( "failed to create all.html" ) ) ;
1565
+ let mut w = BufWriter :: new ( try_err ! ( File :: create( & final_file) , & final_file) ) ;
1567
1566
let mut root_path = self . dst . to_str ( ) . expect ( "invalid path" ) . to_owned ( ) ;
1568
1567
if !root_path. ends_with ( '/' ) {
1569
1568
root_path. push ( '/' ) ;
@@ -1586,10 +1585,11 @@ impl Context {
1586
1585
} else {
1587
1586
String :: new ( )
1588
1587
} ;
1589
- layout:: render ( & mut w, & self . shared . layout ,
1590
- & page, & sidebar, & all,
1591
- self . shared . css_file_extension . is_some ( ) ,
1592
- & self . shared . themes ) . expect ( "layout rendering failed" ) ;
1588
+ try_err ! ( layout:: render( & mut w, & self . shared. layout,
1589
+ & page, & sidebar, & all,
1590
+ self . shared. css_file_extension. is_some( ) ,
1591
+ & self . shared. themes) ,
1592
+ & final_file) ;
1593
1593
Ok ( ( ) )
1594
1594
}
1595
1595
@@ -1728,7 +1728,7 @@ impl Context {
1728
1728
let mut dst = try_err ! ( File :: create( & joint_dst) , & joint_dst) ;
1729
1729
try_err ! ( dst. write_all( & buf) , & joint_dst) ;
1730
1730
1731
- all. append ( full_path ( self , & item) , item_type. css_class ( ) ) ;
1731
+ all. append ( full_path ( self , & item) , & item_type) ;
1732
1732
// Redirect from a sane URL using the namespace to Rustdoc's
1733
1733
// URL for the page.
1734
1734
let redir_name = format ! ( "{}.{}.html" , name, item_type. name_space( ) ) ;
@@ -3733,9 +3733,8 @@ impl<'a> fmt::Display for Sidebar<'a> {
3733
3733
"<div class='block version'>\
3734
3734
<p>Version {}</p>\
3735
3735
</div>
3736
- <a id='all-types' href='all{} .html'><p>See all {}'s items</p></a>" ,
3736
+ <a id='all-types' href='all.html'><p>See all {}'s items</p></a>" ,
3737
3737
version,
3738
- cx. shared. resource_suffix,
3739
3738
it. name. as_ref( ) . unwrap( ) ) ?;
3740
3739
}
3741
3740
}
0 commit comments