1- use super :: { IntoBuf , Take , Reader , Iter , FromBuf , Chain } ;
1+ use super :: { IntoBuf , Take , Reader , Iter , Chain } ;
2+ #[ cfg( feature = "std" ) ]
3+ use super :: FromBuf ;
4+
25use byteorder:: ByteOrder ;
6+ #[ cfg( feature = "std" ) ]
37use iovec:: IoVec ;
48
5- use std:: { cmp, io, ptr} ;
9+ use core:: { cmp, ptr} ;
10+
11+ #[ cfg( feature = "std" ) ]
12+ use std:: io;
613
714/// Read bytes from a buffer.
815///
@@ -12,7 +19,7 @@ use std::{cmp, io, ptr};
1219/// position. It can be thought of as an efficient `Iterator` for collections of
1320/// bytes.
1421///
15- /// The simplest `Buf` is a `Cursor` wrapping a `[u8]`.
22+ /// The simplest `Buf` is a `io:: Cursor` wrapping a `[u8]`.
1623///
1724/// ```
1825/// use bytes::Buf;
@@ -113,6 +120,7 @@ pub trait Buf {
113120 /// with `dst` being a zero length slice.
114121 ///
115122 /// [`writev`]: http://man7.org/linux/man-pages/man2/readv.2.html
123+ #[ cfg( feature = "std" ) ]
116124 fn bytes_vec < ' a > ( & ' a self , dst : & mut [ & ' a IoVec ] ) -> usize {
117125 if dst. is_empty ( ) {
118126 return 0 ;
@@ -520,6 +528,7 @@ pub trait Buf {
520528 ///
521529 /// assert_eq!(vec, &b"hello world"[..]);
522530 /// ```
531+ #[ cfg( feature = "std" ) ]
523532 fn collect < B > ( self ) -> B
524533 where Self : Sized ,
525534 B : FromBuf ,
@@ -662,6 +671,7 @@ impl<'a, T: Buf + ?Sized> Buf for &'a mut T {
662671 ( * * self ) . bytes ( )
663672 }
664673
674+ #[ cfg( feature = "std" ) ]
665675 fn bytes_vec < ' b > ( & ' b self , dst : & mut [ & ' b IoVec ] ) -> usize {
666676 ( * * self ) . bytes_vec ( dst)
667677 }
@@ -671,6 +681,7 @@ impl<'a, T: Buf + ?Sized> Buf for &'a mut T {
671681 }
672682}
673683
684+ #[ cfg( feature = "std" ) ]
674685impl < T : Buf + ?Sized > Buf for Box < T > {
675686 fn remaining ( & self ) -> usize {
676687 ( * * self ) . remaining ( )
@@ -680,6 +691,7 @@ impl<T: Buf + ?Sized> Buf for Box<T> {
680691 ( * * self ) . bytes ( )
681692 }
682693
694+ #[ cfg( feature = "std" ) ]
683695 fn bytes_vec < ' b > ( & ' b self , dst : & mut [ & ' b IoVec ] ) -> usize {
684696 ( * * self ) . bytes_vec ( dst)
685697 }
@@ -689,6 +701,7 @@ impl<T: Buf + ?Sized> Buf for Box<T> {
689701 }
690702}
691703
704+ #[ cfg( feature = "std" ) ]
692705impl < T : AsRef < [ u8 ] > > Buf for io:: Cursor < T > {
693706 fn remaining ( & self ) -> usize {
694707 let len = self . get_ref ( ) . as_ref ( ) . len ( ) ;
0 commit comments