diff options
Diffstat (limited to 'src/libstd/rt/io/mod.rs')
| -rw-r--r-- | src/libstd/rt/io/mod.rs | 27 |
1 files changed, 25 insertions, 2 deletions
diff --git a/src/libstd/rt/io/mod.rs b/src/libstd/rt/io/mod.rs index f14f8f28d12..f9542cbf5f9 100644 --- a/src/libstd/rt/io/mod.rs +++ b/src/libstd/rt/io/mod.rs @@ -313,8 +313,11 @@ pub mod buffered; pub mod native { /// Posix file I/O pub mod file; - /// # XXX - implement this - pub mod stdio { } + /// Process spawning and child management + pub mod process; + /// Posix stdio + pub mod stdio; + /// Sockets /// # XXX - implement this pub mod net { @@ -459,6 +462,16 @@ pub trait Reader { fn eof(&mut self) -> bool; } +impl Reader for ~Reader { + fn read(&mut self, buf: &mut [u8]) -> Option<uint> { self.read(buf) } + fn eof(&mut self) -> bool { self.eof() } +} + +impl<'self> Reader for &'self mut Reader { + fn read(&mut self, buf: &mut [u8]) -> Option<uint> { self.read(buf) } + fn eof(&mut self) -> bool { self.eof() } +} + pub trait Writer { /// Write the given buffer /// @@ -471,6 +484,16 @@ pub trait Writer { fn flush(&mut self); } +impl Writer for ~Writer { + fn write(&mut self, buf: &[u8]) { self.write(buf) } + fn flush(&mut self) { self.flush() } +} + +impl<'self> Writer for &'self mut Writer { + fn write(&mut self, buf: &[u8]) { self.write(buf) } + fn flush(&mut self) { self.flush() } +} + pub trait Stream: Reader + Writer { } impl<T: Reader + Writer> Stream for T {} |
