diff options
| author | Alex Crichton <alex@alexcrichton.com> | 2015-02-24 23:27:20 -0800 |
|---|---|---|
| committer | Alex Crichton <alex@alexcrichton.com> | 2015-02-28 23:13:02 -0800 |
| commit | 94d71f8836b3bfac3370e4d324ca1987d843552f (patch) | |
| tree | bf0f534115ebc644407e2b6b0c74ad6a027fa0c1 /src/libstd/io/mod.rs | |
| parent | 8a69110c3b1122596ddc8999bb2403a5777bb8ed (diff) | |
| download | rust-94d71f8836b3bfac3370e4d324ca1987d843552f.tar.gz rust-94d71f8836b3bfac3370e4d324ca1987d843552f.zip | |
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.
Diffstat (limited to 'src/libstd/io/mod.rs')
| -rw-r--r-- | src/libstd/io/mod.rs | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/src/libstd/io/mod.rs b/src/libstd/io/mod.rs index 3b4e15953c4..5510c0203e6 100644 --- a/src/libstd/io/mod.rs +++ b/src/libstd/io/mod.rs @@ -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; |
