std: Implement stdio for std::io
This is an implementation of RFC 899 and adds stdio functionality to the new `std::io` module. Details of the API can be found on the RFC, but from a high level: * `io::{stdin, stdout, stderr}` constructors are now available. There are also `*_raw` variants for unbuffered and unlocked access. * All handles are globally shared (excluding raw variants). * The stderr handle is no longer buffered. * All handles can be explicitly locked (excluding the raw variants). The `print!` and `println!` machinery has not yet been hooked up to these streams just yet. The `std::fmt::output` module has also not yet been implemented as part of this commit.
This commit is contained in:
parent
8a69110c3b
commit
94d71f8836
20 changed files with 732 additions and 108 deletions
|
@ -39,6 +39,10 @@ pub use self::buffered::IntoInnerError;
|
|||
pub use self::cursor::Cursor;
|
||||
pub use self::error::{Result, Error, ErrorKind};
|
||||
pub use self::util::{copy, sink, Sink, empty, Empty, repeat, Repeat};
|
||||
pub use self::stdio::{stdin, stdout, stderr, Stdin, Stdout, Stderr};
|
||||
pub use self::stdio::{StdoutLock, StderrLock, StdinLock};
|
||||
|
||||
#[macro_use] mod lazy;
|
||||
|
||||
pub mod prelude;
|
||||
mod buffered;
|
||||
|
@ -46,6 +50,7 @@ mod cursor;
|
|||
mod error;
|
||||
mod impls;
|
||||
mod util;
|
||||
mod stdio;
|
||||
|
||||
const DEFAULT_BUF_SIZE: usize = 64 * 1024;
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue