4 pub struct IoSlice<'a>(&'a [u8]);
8 pub fn new(buf: &'a [u8]) -> IoSlice<'a> {
13 pub fn advance(&mut self, n: usize) {
18 pub fn as_slice(&self) -> &[u8] {
23 pub struct IoSliceMut<'a>(&'a mut [u8]);
25 impl<'a> IoSliceMut<'a> {
27 pub fn new(buf: &'a mut [u8]) -> IoSliceMut<'a> {
32 pub fn advance(&mut self, n: usize) {
33 let slice = mem::replace(&mut self.0, &mut []);
34 let (_, remaining) = slice.split_at_mut(n);
39 pub fn as_slice(&self) -> &[u8] {
44 pub fn as_mut_slice(&mut self) -> &mut [u8] {