diff options
Diffstat (limited to 'src/libstd/io/cursor.rs')
| -rw-r--r-- | src/libstd/io/cursor.rs | 14 |
1 files changed, 5 insertions, 9 deletions
diff --git a/src/libstd/io/cursor.rs b/src/libstd/io/cursor.rs index 882ddb1f783..365f5e37b0b 100644 --- a/src/libstd/io/cursor.rs +++ b/src/libstd/io/cursor.rs @@ -11,7 +11,6 @@ use prelude::v1::*; use io::prelude::*; -use core::array::FixedSizeArray; use cmp; use io::{self, SeekFrom, Error, ErrorKind}; use iter::repeat; @@ -73,7 +72,7 @@ macro_rules! seek { fn seek(&mut self, style: SeekFrom) -> io::Result<u64> { let pos = match style { SeekFrom::Start(n) => { self.pos = n; return Ok(n) } - SeekFrom::End(n) => self.inner.as_slice().len() as i64 + n, + SeekFrom::End(n) => self.inner.len() as i64 + n, SeekFrom::Current(n) => self.pos as i64 + n, }; @@ -95,7 +94,6 @@ impl<'a> io::Seek for Cursor<&'a [u8]> { seek!(); } impl<'a> io::Seek for Cursor<&'a mut [u8]> { seek!(); } #[stable(feature = "rust1", since = "1.0.0")] impl io::Seek for Cursor<Vec<u8>> { seek!(); } -impl<'a, T: FixedSizeArray<u8>> io::Seek for Cursor<&'a T> { seek!(); } macro_rules! read { () => { @@ -113,13 +111,12 @@ impl<'a> Read for Cursor<&'a [u8]> { read!(); } impl<'a> Read for Cursor<&'a mut [u8]> { read!(); } #[stable(feature = "rust1", since = "1.0.0")] impl Read for Cursor<Vec<u8>> { read!(); } -impl<'a, T: FixedSizeArray<u8>> Read for Cursor<&'a T> { read!(); } macro_rules! buffer { () => { fn fill_buf(&mut self) -> io::Result<&[u8]> { - let amt = cmp::min(self.pos, self.inner.as_slice().len() as u64); - Ok(&self.inner.as_slice()[(amt as usize)..]) + let amt = cmp::min(self.pos, self.inner.len() as u64); + Ok(&self.inner[(amt as usize)..]) } fn consume(&mut self, amt: usize) { self.pos += amt as u64; } } @@ -131,7 +128,6 @@ impl<'a> BufRead for Cursor<&'a [u8]> { buffer!(); } impl<'a> BufRead for Cursor<&'a mut [u8]> { buffer!(); } #[stable(feature = "rust1", since = "1.0.0")] impl<'a> BufRead for Cursor<Vec<u8>> { buffer!(); } -impl<'a, T: FixedSizeArray<u8>> BufRead for Cursor<&'a T> { buffer!(); } #[stable(feature = "rust1", since = "1.0.0")] impl<'a> Write for Cursor<&'a mut [u8]> { @@ -332,7 +328,7 @@ mod tests { #[test] fn test_read_char() { - let b = b"Vi\xE1\xBB\x87t"; + let b = &b"Vi\xE1\xBB\x87t"[..]; let mut c = Cursor::new(b).chars(); assert_eq!(c.next(), Some(Ok('V'))); assert_eq!(c.next(), Some(Ok('i'))); @@ -343,7 +339,7 @@ mod tests { #[test] fn test_read_bad_char() { - let b = b"\x80"; + let b = &b"\x80"[..]; let mut c = Cursor::new(b).chars(); assert!(c.next().unwrap().is_err()); } |
