1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59
use crate::io; pub struct Stdin; pub struct Stdout; pub struct Stderr; impl Stdin { pub fn new() -> io::Result<Stdin> { Ok(Stdin) } } impl io::Read for Stdin { fn read(&mut self, _buf: &mut [u8]) -> io::Result<usize> { Ok(0) } } impl Stdout { pub fn new() -> io::Result<Stdout> { Ok(Stdout) } } impl io::Write for Stdout { fn write(&mut self, buf: &[u8]) -> io::Result<usize> { Ok(buf.len()) } fn flush(&mut self) -> io::Result<()> { Ok(()) } } impl Stderr { pub fn new() -> io::Result<Stderr> { Ok(Stderr) } } impl io::Write for Stderr { fn write(&mut self, buf: &[u8]) -> io::Result<usize> { Ok(buf.len()) } fn flush(&mut self) -> io::Result<()> { Ok(()) } } pub const STDIN_BUF_SIZE: usize = 0; pub fn is_ebadf(_err: &io::Error) -> bool { true } pub fn panic_output() -> Option<Vec<u8>> { None }