about summary refs log tree commit diff
path: root/src/libstd
diff options
context:
space:
mode:
authorbors <bors@rust-lang.org>2014-03-22 00:56:47 -0700
committerbors <bors@rust-lang.org>2014-03-22 00:56:47 -0700
commit092afdba3c81d122b4b24aa49dd445023b5daef6 (patch)
tree4f3abfd529e1fedb998bb48351a39c7b8be3b548 /src/libstd
parent993dee4f1421cceddbb434e04826d1359a9c8512 (diff)
parent811257eda5edd7d7d9586a9be4f45a2d4dfa4701 (diff)
downloadrust-092afdba3c81d122b4b24aa49dd445023b5daef6.tar.gz
rust-092afdba3c81d122b4b24aa49dd445023b5daef6.zip
auto merge of #12907 : alexcrichton/rust/issue-12892, r=brson
These methods can be mistaken for general "read some bytes" utilities when
they're actually only meant for reading an exact number of bytes. By renaming
them it's much clearer about what they're doing without having to read the
documentation.

Closes #12892
Diffstat (limited to 'src/libstd')
-rw-r--r--src/libstd/io/extensions.rs22
-rw-r--r--src/libstd/io/mod.rs15
2 files changed, 19 insertions, 18 deletions
diff --git a/src/libstd/io/extensions.rs b/src/libstd/io/extensions.rs
index 070cbd569e6..e5938569ea3 100644
--- a/src/libstd/io/extensions.rs
+++ b/src/libstd/io/extensions.rs
@@ -283,7 +283,7 @@ mod test {
     #[test]
     fn read_bytes() {
         let mut reader = MemReader::new(~[10, 11, 12, 13]);
-        let bytes = reader.read_bytes(4).unwrap();
+        let bytes = reader.read_exact(4).unwrap();
         assert!(bytes == ~[10, 11, 12, 13]);
     }
 
@@ -292,49 +292,49 @@ mod test {
         let mut reader = PartialReader {
             count: 0,
         };
-        let bytes = reader.read_bytes(4).unwrap();
+        let bytes = reader.read_exact(4).unwrap();
         assert!(bytes == ~[10, 11, 12, 13]);
     }
 
     #[test]
     fn read_bytes_eof() {
         let mut reader = MemReader::new(~[10, 11]);
-        assert!(reader.read_bytes(4).is_err());
+        assert!(reader.read_exact(4).is_err());
     }
 
     #[test]
-    fn push_bytes() {
+    fn push_exact() {
         let mut reader = MemReader::new(~[10, 11, 12, 13]);
         let mut buf = ~[8, 9];
-        reader.push_bytes(&mut buf, 4).unwrap();
+        reader.push_exact(&mut buf, 4).unwrap();
         assert!(buf == ~[8, 9, 10, 11, 12, 13]);
     }
 
     #[test]
-    fn push_bytes_partial() {
+    fn push_exact_partial() {
         let mut reader = PartialReader {
             count: 0,
         };
         let mut buf = ~[8, 9];
-        reader.push_bytes(&mut buf, 4).unwrap();
+        reader.push_exact(&mut buf, 4).unwrap();
         assert!(buf == ~[8, 9, 10, 11, 12, 13]);
     }
 
     #[test]
-    fn push_bytes_eof() {
+    fn push_exact_eof() {
         let mut reader = MemReader::new(~[10, 11]);
         let mut buf = ~[8, 9];
-        assert!(reader.push_bytes(&mut buf, 4).is_err());
+        assert!(reader.push_exact(&mut buf, 4).is_err());
         assert!(buf == ~[8, 9, 10, 11]);
     }
 
     #[test]
-    fn push_bytes_error() {
+    fn push_exact_error() {
         let mut reader = ErroringLaterReader {
             count: 0,
         };
         let mut buf = ~[8, 9];
-        assert!(reader.push_bytes(&mut buf, 4).is_err());
+        assert!(reader.push_exact(&mut buf, 4).is_err());
         assert!(buf == ~[8, 9, 10]);
     }
 
diff --git a/src/libstd/io/mod.rs b/src/libstd/io/mod.rs
index cbced77d014..88ffc363e88 100644
--- a/src/libstd/io/mod.rs
+++ b/src/libstd/io/mod.rs
@@ -360,13 +360,13 @@ pub trait Reader {
         }
     }
 
-    /// Reads `len` bytes and appends them to a vector.
+    /// Reads exactly `len` bytes and appends them to a vector.
     ///
     /// May push fewer than the requested number of bytes on error
     /// or EOF. If `Ok(())` is returned, then all of the requested bytes were
     /// pushed on to the vector, otherwise the amount `len` bytes couldn't be
     /// read (an error was encountered), and the error is returned.
-    fn push_bytes(&mut self, buf: &mut ~[u8], len: uint) -> IoResult<()> {
+    fn push_exact(&mut self, buf: &mut ~[u8], len: uint) -> IoResult<()> {
         struct State<'a> {
             buf: &'a mut ~[u8],
             total_read: uint
@@ -396,7 +396,8 @@ pub trait Reader {
             |s| unsafe { s.buf.set_len(start_len + s.total_read) })
     }
 
-    /// Reads `len` bytes and gives you back a new vector of length `len`
+    /// Reads exactly `len` bytes and gives you back a new vector of length
+    /// `len`
     ///
     /// # Error
     ///
@@ -404,10 +405,10 @@ pub trait Reader {
     /// on EOF. Note that if an error is returned, then some number of bytes may
     /// have already been consumed from the underlying reader, and they are lost
     /// (not returned as part of the error). If this is unacceptable, then it is
-    /// recommended to use the `push_bytes` or `read` methods.
-    fn read_bytes(&mut self, len: uint) -> IoResult<~[u8]> {
+    /// recommended to use the `push_exact` or `read` methods.
+    fn read_exact(&mut self, len: uint) -> IoResult<~[u8]> {
         let mut buf = slice::with_capacity(len);
-        match self.push_bytes(&mut buf, len) {
+        match self.push_exact(&mut buf, len) {
             Ok(()) => Ok(buf),
             Err(e) => Err(e),
         }
@@ -424,7 +425,7 @@ pub trait Reader {
     fn read_to_end(&mut self) -> IoResult<~[u8]> {
         let mut buf = slice::with_capacity(DEFAULT_BUF_SIZE);
         loop {
-            match self.push_bytes(&mut buf, DEFAULT_BUF_SIZE) {
+            match self.push_exact(&mut buf, DEFAULT_BUF_SIZE) {
                 Ok(()) => {}
                 Err(ref e) if e.kind == EndOfFile => break,
                 Err(e) => return Err(e)