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}