//! needs to read-after-write from a file, then it would be added to this
//! abstraction.
-use errors;
-
use std::fs;
use std::io;
use std::path::Path;
}
/// Prints all stored errors. Returns the number of printed errors.
- pub fn write_errors(&mut self, diag: &errors::Handler) -> usize {
+ pub fn write_errors(&mut self, diag: &rustc_errors::Handler) -> usize {
let mut printed = 0;
// In order to drop the sender part of the channel.
self.sender = None;
let sender = self.errors.sender.clone().unwrap();
rayon::spawn(move || match fs::write(&path, &contents) {
Ok(_) => {
- sender
- .send(None)
- .expect(&format!("failed to send error on \"{}\"", path.display()));
+ sender.send(None).unwrap_or_else(|_| {
+ panic!("failed to send error on \"{}\"", path.display())
+ });
}
Err(e) => {
- sender
- .send(Some(format!("\"{}\": {}", path.display(), e)))
- .expect(&format!("failed to send non-error on \"{}\"", path.display()));
+ sender.send(Some(format!("\"{}\": {}", path.display(), e))).unwrap_or_else(
+ |_| panic!("failed to send non-error on \"{}\"", path.display()),
+ );
}
});
Ok(())