dsalgo/
io_locked_stdout_buffered_writer.rs

1pub fn locked_stdout_buf_writer(
2) -> std::io::BufWriter<std::io::StdoutLock<'static>> {
3    let stdout = Box::leak(Box::new(std::io::stdout()));
4
5    std::io::BufWriter::new(stdout.lock())
6}
7
8#[cfg(test)]
9
10mod tests {
11
12    #[test]
13
14    fn test_locked_stdin_buf_writer() {
15        use std::io::Write;
16
17        use super::locked_stdout_buf_writer;
18
19        let mut writer = locked_stdout_buf_writer();
20
21        writeln!(writer, "Hello, world!").unwrap();
22
23        writer.flush().unwrap();
24    }
25}