Struct bytecodec::bytes::RemainingBytesDecoder
[−]
[src]
pub struct RemainingBytesDecoder(_);
RemainingBytesDecoder
reads all the bytes from a input sequence until it reaches EOS.
Examples
use bytecodec::{Decode, Eos}; use bytecodec::bytes::RemainingBytesDecoder; let mut decoder = RemainingBytesDecoder::new(); assert_eq!(decoder.requiring_bytes().to_u64(), None); let (size, item) = decoder.decode(b"foo", Eos::new(false)).unwrap(); assert_eq!(item, None); assert_eq!(size, 3); let (size, item) = decoder.decode(b"bar", Eos::new(true)).unwrap(); assert_eq!(item, Some(b"foobar".to_vec())); assert_eq!(size, 3);
Methods
impl RemainingBytesDecoder
[src]
Trait Implementations
impl Debug for RemainingBytesDecoder
[src]
fn fmt(&self, __arg_0: &mut Formatter) -> Result
[src]
Formats the value using the given formatter. Read more
impl Default for RemainingBytesDecoder
[src]
fn default() -> RemainingBytesDecoder
[src]
Returns the "default value" for a type. Read more
impl Decode for RemainingBytesDecoder
[src]
type Item = Vec<u8>
The type of items to be decoded.
fn decode(
&mut self,
buf: &[u8],
eos: Eos
) -> Result<(usize, Option<Self::Item>)>
[src]
&mut self,
buf: &[u8],
eos: Eos
) -> Result<(usize, Option<Self::Item>)>
Consumes the given buffer (a part of a byte sequence), and decodes an item from it. Read more
fn requiring_bytes(&self) -> ByteCount
[src]
Returns the lower bound of the number of bytes needed to decode the next item. Read more