@@ -28,6 +28,7 @@ use std::vec;
28
28
use extra:: arc:: RWArc ;
29
29
use extra:: json:: ToJson ;
30
30
use extra:: sort;
31
+ use extra:: time;
31
32
32
33
use syntax:: ast;
33
34
use syntax:: ast_util:: is_local;
@@ -179,6 +180,8 @@ pub fn run(mut crate: clean::Crate, dst: Path) {
179
180
w. flush ( ) ;
180
181
}
181
182
183
+ info2 ! ( "emitting source files" ) ;
184
+ let started = time:: precise_time_ns ( ) ;
182
185
{
183
186
let dst = cx. dst . push ( "src" ) ;
184
187
mkdir ( & dst) ;
@@ -191,9 +194,14 @@ pub fn run(mut crate: clean::Crate, dst: Path) {
191
194
} ;
192
195
crate = folder. fold_crate ( crate ) ;
193
196
}
197
+ let ended = time:: precise_time_ns ( ) ;
198
+ info2 ! ( "Took {:.03f}s" , ( ended as f64 - started as f64 ) / 1e9f64 ) ;
194
199
195
- // Now render the whole crate.
200
+ info2 ! ( "rendering the whole crate" ) ;
201
+ let started = time:: precise_time_ns ( ) ;
196
202
cx. crate ( crate , cache) ;
203
+ let ended = time:: precise_time_ns ( ) ;
204
+ info2 ! ( "Took {:.03f}s" , ( ended as f64 - started as f64 ) / 1e9f64 ) ;
197
205
}
198
206
199
207
fn write ( dst : Path , contents : & str ) {
@@ -289,7 +297,8 @@ impl<'self> SourceCollector<'self> {
289
297
}
290
298
291
299
let dst = cur.push(*p.components.last() + " . html ") ;
292
- let mut w = dst. open_writer ( io:: CreateOrTruncate ) ;
300
+ let w = dst. open_writer ( io:: CreateOrTruncate ) ;
301
+ let mut w = BufferedWriter :: new ( w) ;
293
302
294
303
let title = format ! ( "{} -- source" , * dst. components. last( ) ) ;
295
304
let page = layout:: Page {
@@ -299,6 +308,7 @@ impl<'self> SourceCollector<'self> {
299
308
} ;
300
309
layout:: render ( & mut w as & mut io:: Writer , & self . cx . layout ,
301
310
& page, & ( "" ) , & Source ( contents. as_slice ( ) ) ) ;
311
+ w. flush ( ) ;
302
312
return true ;
303
313
}
304
314
}
0 commit comments