ouch/src/utils/io.rs
2024-04-01 10:58:35 -03:00

13 lines
355 B
Rust

use std::io::{self, stderr, stdout, StderrLock, StdoutLock, Write};
type StdioOutputLocks = (StdoutLock<'static>, StderrLock<'static>);
pub fn lock_and_flush_output_stdio() -> io::Result<StdioOutputLocks> {
let mut stdout = stdout().lock();
stdout.flush()?;
let mut stderr = stderr().lock();
stderr.flush()?;
Ok((stdout, stderr))
}