Skip to content
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
Show all changes
29 commits
Select commit Hold shift + click to select a range
c78bfba
Use consistent punctuation for 'Prelude contents' docs
camelid Dec 18, 2020
4a6014b
Use heading style for 'The I/O Prelude' in `std::io::prelude`
camelid Dec 18, 2020
2e049a6
Add regr. test for mutual recursion
JulianKnodt Dec 28, 2020
2eb4ccd
Improve grammar in documentation of format strings
steffahn Jan 1, 2021
4274ba4
Use lowercase for prelude items
camelid Jan 6, 2021
25a4964
Use heading for `std::prelude` and not `io::prelude`
camelid Jan 6, 2021
96e9562
Visit only terminators when removing landing pads
tmiasko Jan 18, 2021
d829e40
Improve unknown external crate error
rylev Jan 15, 2021
38b7742
Add tests for resolution changes
rylev Jan 18, 2021
9abd80c
Fix internal rustdoc broken links
CPerezz Jan 18, 2021
d926147
Remove unnecessary `after_run` function
jyn514 Jan 19, 2021
203df17
Fix typo in counters.rs
eltociear Jan 19, 2021
3fb53c2
Fix ICE in mir when evaluating SizeOf on unsized type
osa1 Jan 19, 2021
bc6720f
Add SpecFromIter ref in the comments directly
CPerezz Jan 19, 2021
9e42d14
Add Vec visualization to understand capacity
pickfire Dec 3, 2020
9f338e1
Add more details explaning the Vec visualization
pickfire Dec 5, 2020
27f3764
Document security implications of std::env::temp_dir
joshtriplett Jan 20, 2021
9844d9e
Remove link to current section
pickfire Jan 21, 2021
a18813f
Rollup merge of #79655 - pickfire:visual-vec, r=m-ou-se
JohnTitor Jan 21, 2021
9abd746
Rollup merge of #80172 - camelid:prelude-docs-consistent-punct, r=ste…
JohnTitor Jan 21, 2021
bcaf7df
Rollup merge of #80429 - JulianKnodt:ob_forest, r=Mark-Simulacrum
JohnTitor Jan 21, 2021
8be36b1
Rollup merge of #80601 - steffahn:improve_format_string_grammar, r=m-…
JohnTitor Jan 21, 2021
a77c1d8
Rollup merge of #81046 - rylev:unknown-external-crate, r=estebank
JohnTitor Jan 21, 2021
cd0c54a
Rollup merge of #81178 - tmiasko:no-landing-pads, r=oli-obk
JohnTitor Jan 21, 2021
b76f0f9
Rollup merge of #81179 - CPerezz:fix_interal_doc_warns, r=jyn514
JohnTitor Jan 21, 2021
0aeb2fc
Rollup merge of #81184 - jyn514:combine-after, r=CraftSpider
JohnTitor Jan 21, 2021
bc950c8
Rollup merge of #81185 - osa1:fix_80742, r=oli-obk
JohnTitor Jan 21, 2021
2ebc036
Rollup merge of #81187 - eltociear:patch-6, r=jonas-schievink
JohnTitor Jan 21, 2021
d6c7a79
Rollup merge of #81219 - joshtriplett:temp_dir-docs, r=sfackler
JohnTitor Jan 21, 2021
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
Remove unnecessary after_run function
It's called at the same time and in the same place as `after_krate`, so
they can be combined.
  • Loading branch information
jyn514 committed Jan 19, 2021
commit d926147ccbd9bda51a5f0754f62811c0699621e5
15 changes: 9 additions & 6 deletions src/librustdoc/formats/renderer.rs
Original file line number Diff line number Diff line change
Expand Up @@ -38,10 +38,14 @@ crate trait FormatRenderer<'tcx>: Clone {
fn mod_item_out(&mut self, item_name: &str) -> Result<(), Error>;

/// Post processing hook for cleanup and dumping output to files.
fn after_krate(&mut self, krate: &clean::Crate, cache: &Cache) -> Result<(), Error>;

/// Called after everything else to write out errors.
fn after_run(&mut self, diag: &rustc_errors::Handler) -> Result<(), Error>;
///
/// A handler is available if the renderer wants to report errors.
fn after_krate(
&mut self,
krate: &clean::Crate,
cache: &Cache,
diag: &rustc_errors::Handler,
) -> Result<(), Error>;
}

/// Main method for rendering a crate.
Expand Down Expand Up @@ -104,6 +108,5 @@ crate fn run_format<'tcx, T: FormatRenderer<'tcx>>(
}
}

format_renderer.after_krate(&krate, &cache)?;
format_renderer.after_run(diag)
format_renderer.after_krate(&krate, &cache, diag)
}
27 changes: 15 additions & 12 deletions src/librustdoc/html/render/mod.rs
Original file line number Diff line number Diff line change
Expand Up @@ -523,17 +523,12 @@ impl<'tcx> FormatRenderer<'tcx> for Context<'tcx> {
Ok((cx, krate))
}

fn after_run(&mut self, diag: &rustc_errors::Handler) -> Result<(), Error> {
Arc::get_mut(&mut self.shared).unwrap().fs.close();
let nb_errors = self.errors.iter().map(|err| diag.struct_err(&err).emit()).count();
if nb_errors > 0 {
Err(Error::new(io::Error::new(io::ErrorKind::Other, "I/O error"), ""))
} else {
Ok(())
}
}

fn after_krate(&mut self, krate: &clean::Crate, cache: &Cache) -> Result<(), Error> {
fn after_krate(
&mut self,
krate: &clean::Crate,
cache: &Cache,
diag: &rustc_errors::Handler,
) -> Result<(), Error> {
let final_file = self.dst.join(&*krate.name.as_str()).join("all.html");
let settings_file = self.dst.join("settings.html");
let crate_name = krate.name;
Expand Down Expand Up @@ -596,7 +591,15 @@ impl<'tcx> FormatRenderer<'tcx> for Context<'tcx> {
&style_files,
);
self.shared.fs.write(&settings_file, v.as_bytes())?;
Ok(())

// Flush pending errors.
Arc::get_mut(&mut self.shared).unwrap().fs.close();
let nb_errors = self.errors.iter().map(|err| diag.struct_err(&err).emit()).count();
if nb_errors > 0 {
Err(Error::new(io::Error::new(io::ErrorKind::Other, "I/O error"), ""))
} else {
Ok(())
}
}

fn mod_item_in(
Expand Down
11 changes: 6 additions & 5 deletions src/librustdoc/json/mod.rs
Original file line number Diff line number Diff line change
Expand Up @@ -199,7 +199,12 @@ impl<'tcx> FormatRenderer<'tcx> for JsonRenderer<'tcx> {
Ok(())
}

fn after_krate(&mut self, krate: &clean::Crate, cache: &Cache) -> Result<(), Error> {
fn after_krate(
&mut self,
krate: &clean::Crate,
cache: &Cache,
_diag: &rustc_errors::Handler,
) -> Result<(), Error> {
debug!("Done with crate");
let mut index = (*self.index).clone().into_inner();
index.extend(self.get_trait_items(cache));
Expand Down Expand Up @@ -245,8 +250,4 @@ impl<'tcx> FormatRenderer<'tcx> for JsonRenderer<'tcx> {
serde_json::ser::to_writer(&file, &output).unwrap();
Ok(())
}

fn after_run(&mut self, _diag: &rustc_errors::Handler) -> Result<(), Error> {
Ok(())
}
}