diff --git a/src/buf/mod.rs b/src/buf/mod.rs index cdd11ea00098269cdc207e08799356d980adb11b..00a9a3210314266ac46df1676e45614c65e5f906 100644 --- a/src/buf/mod.rs +++ b/src/buf/mod.rs @@ -2,14 +2,12 @@ mod append; mod byte; mod ring; mod sink; -mod slice; mod source; mod take; pub use self::append::AppendBuf; pub use self::byte::{ByteBuf, MutByteBuf, ROByteBuf}; pub use self::ring::RingBuf; -pub use self::slice::{SliceBuf, MutSliceBuf}; pub use self::take::Take; use {ByteStr, RopeBuf}; @@ -43,9 +41,10 @@ pub trait Buf { /// Returns the number of bytes read. /// /// ``` - /// use bytes::{SliceBuf, Buf}; + /// use std::io::Cursor; + /// use bytes::Buf; /// - /// let mut buf = SliceBuf::wrap(b"hello world"); + /// let mut buf = Cursor::new(b"hello world"); /// let mut dst = [0; 5]; /// /// buf.read_slice(&mut dst); @@ -117,12 +116,13 @@ pub trait MutBuf : Sized { /// Returns the number of bytes written. /// /// ``` - /// use bytes::{MutSliceBuf, Buf, MutBuf}; + /// use bytes::MutBuf; + /// use std::io::Cursor; /// /// let mut dst = [0; 6]; /// /// { - /// let mut buf = MutSliceBuf::wrap(&mut dst); + /// let mut buf = Cursor::new(&mut dst); /// buf.write_slice(b"hello"); /// /// assert_eq!(1, buf.remaining()); diff --git a/src/buf/slice.rs b/src/buf/slice.rs deleted file mode 100644 index a526803bff0bd9a013d90338b06b8ff48228911b..0000000000000000000000000000000000000000 --- a/src/buf/slice.rs +++ /dev/null @@ -1,59 +0,0 @@ -use std::cmp; -use {Buf, MutBuf}; - -// TODO: Rename -> Cursor. Use as buf for various byte strings - -pub struct SliceBuf<'a> { - bytes: &'a [u8], - pos: usize -} - -impl<'a> SliceBuf<'a> { - pub fn wrap(bytes: &'a [u8]) -> SliceBuf<'a> { - SliceBuf { bytes: bytes, pos: 0 } - } -} - -impl<'a> Buf for SliceBuf<'a> { - fn remaining(&self) -> usize { - self.bytes.len() - self.pos - } - - fn bytes<'b>(&'b self) -> &'b [u8] { - &self.bytes[self.pos..] - } - - fn advance(&mut self, mut cnt: usize) { - cnt = cmp::min(cnt, self.remaining()); - self.pos += cnt; - } -} - -pub struct MutSliceBuf<'a> { - bytes: &'a mut [u8], - pos: usize -} - -impl<'a> MutSliceBuf<'a> { - pub fn wrap(bytes: &'a mut [u8]) -> MutSliceBuf<'a> { - MutSliceBuf { - bytes: bytes, - pos: 0 - } - } -} - -impl<'a> MutBuf for MutSliceBuf<'a> { - fn remaining(&self) -> usize { - self.bytes.len() - self.pos - } - - unsafe fn advance(&mut self, mut cnt: usize) { - cnt = cmp::min(cnt, self.remaining()); - self.pos += cnt; - } - - unsafe fn mut_bytes<'b>(&'b mut self) -> &'b mut [u8] { - &mut self.bytes[self.pos..] - } -} diff --git a/src/lib.rs b/src/lib.rs index f79ea9b230c3bd6a99a82225136e56f621119e96..1b977d3686ac9e40daac56059b67b873c8ea4b88 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -14,8 +14,6 @@ pub use buf::{ MutByteBuf, RingBuf, ROByteBuf, - SliceBuf, - MutSliceBuf, Take, ReadExt, WriteExt,