diff options
Diffstat (limited to 'ctr-std/src/sys/redox/stdio.rs')
| -rw-r--r-- | ctr-std/src/sys/redox/stdio.rs | 81 |
1 files changed, 0 insertions, 81 deletions
diff --git a/ctr-std/src/sys/redox/stdio.rs b/ctr-std/src/sys/redox/stdio.rs deleted file mode 100644 index 7a4d11b..0000000 --- a/ctr-std/src/sys/redox/stdio.rs +++ /dev/null @@ -1,81 +0,0 @@ -// Copyright 2016 The Rust Project Developers. See the COPYRIGHT -// file at the top-level directory of this distribution and at -// http://rust-lang.org/COPYRIGHT. -// -// Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or -// http://www.apache.org/licenses/LICENSE-2.0> or the MIT license -// <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your -// option. This file may not be copied, modified, or distributed -// except according to those terms. - -use io; -use sys::{cvt, syscall}; -use sys::fd::FileDesc; - -pub struct Stdin(()); -pub struct Stdout(()); -pub struct Stderr(()); - -impl Stdin { - pub fn new() -> io::Result<Stdin> { Ok(Stdin(())) } - - pub fn read(&self, data: &mut [u8]) -> io::Result<usize> { - let fd = FileDesc::new(0); - let ret = fd.read(data); - fd.into_raw(); - ret - } -} - -impl Stdout { - pub fn new() -> io::Result<Stdout> { Ok(Stdout(())) } - - pub fn write(&self, data: &[u8]) -> io::Result<usize> { - let fd = FileDesc::new(1); - let ret = fd.write(data); - fd.into_raw(); - ret - } - - pub fn flush(&self) -> io::Result<()> { - cvt(syscall::fsync(1)).and(Ok(())) - } -} - -impl Stderr { - pub fn new() -> io::Result<Stderr> { Ok(Stderr(())) } - - pub fn write(&self, data: &[u8]) -> io::Result<usize> { - let fd = FileDesc::new(2); - let ret = fd.write(data); - fd.into_raw(); - ret - } - - pub fn flush(&self) -> io::Result<()> { - cvt(syscall::fsync(2)).and(Ok(())) - } -} - -// FIXME: right now this raw stderr handle is used in a few places because -// std::io::stderr_raw isn't exposed, but once that's exposed this impl -// should go away -impl io::Write for Stderr { - fn write(&mut self, data: &[u8]) -> io::Result<usize> { - Stderr::write(self, data) - } - - fn flush(&mut self) -> io::Result<()> { - Stderr::flush(self) - } -} - -pub fn is_ebadf(err: &io::Error) -> bool { - err.raw_os_error() == Some(::sys::syscall::EBADF as i32) -} - -pub const STDIN_BUF_SIZE: usize = ::sys_common::io::DEFAULT_BUF_SIZE; - -pub fn stderr_prints_nothing() -> bool { - false -} |