11use  super :: { IntoBuf ,  Writer } ; 
22use  byteorder:: { LittleEndian ,  ByteOrder ,  BigEndian } ; 
3+ #[ cfg( feature = "iovec" ) ]  
34use  iovec:: IoVec ; 
5+ #[ cfg( feature = "std" ) ]  
6+ use  prelude:: * ; 
47
5- use  std:: { cmp,  io,  ptr,  usize} ; 
8+ use  core:: { cmp,  ptr,  usize} ; 
9+ #[ cfg( feature = "std" ) ]  
10+ use  std:: io; 
611
712/// A trait for values that provide sequential write access to bytes. 
813/// 
@@ -189,6 +194,7 @@ pub trait BufMut {
189194     /// with `dst` being a zero length slice. 
190195     /// 
191196     /// [`readv`]: http://man7.org/linux/man-pages/man2/readv.2.html 
197+      #[ cfg( feature = "iovec" ) ]  
192198    unsafe  fn  bytes_vec_mut < ' a > ( & ' a  mut  self ,  dst :  & mut  [ & ' a  mut  IoVec ] )  -> usize  { 
193199        if  dst. is_empty ( )  { 
194200            return  0 ; 
@@ -1072,6 +1078,7 @@ impl<'a, T: BufMut + ?Sized> BufMut for &'a mut T {
10721078        ( * * self ) . bytes_mut ( ) 
10731079    } 
10741080
1081+     #[ cfg( feature = "iovec" ) ]  
10751082    unsafe  fn  bytes_vec_mut < ' b > ( & ' b  mut  self ,  dst :  & mut  [ & ' b  mut  IoVec ] )  -> usize  { 
10761083        ( * * self ) . bytes_vec_mut ( dst) 
10771084    } 
@@ -1081,6 +1088,7 @@ impl<'a, T: BufMut + ?Sized> BufMut for &'a mut T {
10811088    } 
10821089} 
10831090
1091+ #[ cfg( feature = "std" ) ]  
10841092impl < T :  BufMut  + ?Sized >  BufMut  for  Box < T >  { 
10851093    fn  remaining_mut ( & self )  -> usize  { 
10861094        ( * * self ) . remaining_mut ( ) 
@@ -1099,6 +1107,7 @@ impl<T: BufMut + ?Sized> BufMut for Box<T> {
10991107    } 
11001108} 
11011109
1110+ #[ cfg( feature = "std" ) ]  
11021111impl < T :  AsMut < [ u8 ] >  + AsRef < [ u8 ] > >  BufMut  for  io:: Cursor < T >  { 
11031112    fn  remaining_mut ( & self )  -> usize  { 
11041113        use  Buf ; 
@@ -1127,6 +1136,7 @@ impl<T: AsMut<[u8]> + AsRef<[u8]>> BufMut for io::Cursor<T> {
11271136    } 
11281137} 
11291138
1139+ #[ cfg( feature = "std" ) ]  
11301140impl  BufMut  for  Vec < u8 >  { 
11311141    #[ inline]  
11321142    fn  remaining_mut ( & self )  -> usize  { 
@@ -1148,7 +1158,7 @@ impl BufMut for Vec<u8> {
11481158
11491159    #[ inline]  
11501160    unsafe  fn  bytes_mut ( & mut  self )  -> & mut  [ u8 ]  { 
1151-         use  std :: slice; 
1161+         use  core :: slice; 
11521162
11531163        if  self . capacity ( )  == self . len ( )  { 
11541164            self . reserve ( 64 ) ;  // Grow the vec 
0 commit comments