rustfmt_nightly/emitter/stdout.rs
1use super::*;
2use crate::config::Verbosity;
3
4#[derive(Debug)]
5pub(crate) struct StdoutEmitter {
6 verbosity: Verbosity,
7}
8
9impl StdoutEmitter {
10 pub(crate) fn new(verbosity: Verbosity) -> Self {
11 Self { verbosity }
12 }
13}
14
15impl Emitter for StdoutEmitter {
16 fn emit_formatted_file(
17 &mut self,
18 output: &mut dyn Write,
19 FormattedFile {
20 filename,
21 formatted_text,
22 ..
23 }: FormattedFile<'_>,
24 ) -> Result<EmitterResult, io::Error> {
25 if self.verbosity != Verbosity::Quiet {
26 writeln!(output, "{filename}:\n")?;
27 }
28 write!(output, "{formatted_text}")?;
29 Ok(EmitterResult::default())
30 }
31}