pub struct BufList { /* private fields */ }Expand description
Data composed of a list of Bytes chunks.
For more, see the crate documentation.
Implementations§
Source§impl BufList
 
impl BufList
Sourcepub fn with_capacity(capacity: usize) -> Self
 
pub fn with_capacity(capacity: usize) -> Self
Creates a new, empty, BufList with the given capacity.
Sourcepub fn num_chunks(&self) -> usize
 
pub fn num_chunks(&self) -> usize
Returns the total number of chunks in this BufList.
§Examples
use buf_list::BufList;
let buf_list = vec![&b"hello"[..], &b"world"[..]].into_iter().collect::<BufList>();
assert_eq!(buf_list.num_chunks(), 2);Sourcepub fn num_bytes(&self) -> usize
 
pub fn num_bytes(&self) -> usize
Returns the total number of bytes across all chunks.
§Examples
use buf_list::BufList;
let buf_list = vec![&b"hello"[..], &b"world"[..]].into_iter().collect::<BufList>();
assert_eq!(buf_list.num_bytes(), 10);Sourcepub fn get_chunk(&self, index: usize) -> Option<&Bytes>
 
pub fn get_chunk(&self, index: usize) -> Option<&Bytes>
Provides a reference to the chunk at the given index.
§Examples
use buf_list::BufList;
use bytes::Bytes;
let buf_list = vec![&b"hello"[..], &b"world"[..]].into_iter().collect::<BufList>();
assert_eq!(buf_list.get_chunk(1), Some(&Bytes::from(&b"world"[..])));Sourcepub fn push_chunk<B: Buf>(&mut self, data: B) -> Bytes
 
pub fn push_chunk<B: Buf>(&mut self, data: B) -> Bytes
Adds a new chunk to this list.
If the provided Buf is zero-length, it will not be added to the list.
§Examples
use buf_list::BufList;
use bytes::{Buf, Bytes};
let mut buf_list = BufList::new();
// &'static [u8] implements Buf.
buf_list.push_chunk(&b"hello"[..]);
assert_eq!(buf_list.chunk(), &b"hello"[..]);
// Bytes also implements Buf.
buf_list.push_chunk(Bytes::from_static(&b"world"[..]));
assert_eq!(buf_list.num_chunks(), 2);
// A zero-length `Buf` will not be added to the list.
buf_list.push_chunk(Bytes::new());
assert_eq!(buf_list.num_chunks(), 2);Trait Implementations§
Source§impl Buf for BufList
 
impl Buf for BufList
Source§fn remaining(&self) -> usize
 
fn remaining(&self) -> usize
Returns the number of bytes between the current position and the end of
the buffer. Read more
Source§fn chunk(&self) -> &[u8] ⓘ
 
fn chunk(&self) -> &[u8] ⓘ
Returns a slice starting at the current position and of length between 0
and 
Buf::remaining(). Note that this can return a shorter slice (this
allows non-continuous internal representation). Read moreSource§fn chunks_vectored<'iovs>(&'iovs self, iovs: &mut [IoSlice<'iovs>]) -> usize
 
fn chunks_vectored<'iovs>(&'iovs self, iovs: &mut [IoSlice<'iovs>]) -> usize
Source§fn copy_to_bytes(&mut self, len: usize) -> Bytes
 
fn copy_to_bytes(&mut self, len: usize) -> Bytes
Source§fn has_remaining(&self) -> bool
 
fn has_remaining(&self) -> bool
Returns true if there are any more bytes to consume Read more
Source§fn copy_to_slice(&mut self, dst: &mut [u8])
 
fn copy_to_slice(&mut self, dst: &mut [u8])
Source§fn get_u16(&mut self) -> u16
 
fn get_u16(&mut self) -> u16
Gets an unsigned 16 bit integer from 
self in big-endian byte order. Read moreSource§fn get_u16_le(&mut self) -> u16
 
fn get_u16_le(&mut self) -> u16
Gets an unsigned 16 bit integer from 
self in little-endian byte order. Read moreSource§fn get_u16_ne(&mut self) -> u16
 
fn get_u16_ne(&mut self) -> u16
Gets an unsigned 16 bit integer from 
self in native-endian byte order. Read moreSource§fn get_i16(&mut self) -> i16
 
fn get_i16(&mut self) -> i16
Gets a signed 16 bit integer from 
self in big-endian byte order. Read moreSource§fn get_i16_le(&mut self) -> i16
 
fn get_i16_le(&mut self) -> i16
Gets a signed 16 bit integer from 
self in little-endian byte order. Read moreSource§fn get_i16_ne(&mut self) -> i16
 
fn get_i16_ne(&mut self) -> i16
Gets a signed 16 bit integer from 
self in native-endian byte order. Read moreSource§fn get_u32(&mut self) -> u32
 
fn get_u32(&mut self) -> u32
Gets an unsigned 32 bit integer from 
self in the big-endian byte order. Read moreSource§fn get_u32_le(&mut self) -> u32
 
fn get_u32_le(&mut self) -> u32
Gets an unsigned 32 bit integer from 
self in the little-endian byte order. Read moreSource§fn get_u32_ne(&mut self) -> u32
 
fn get_u32_ne(&mut self) -> u32
Gets an unsigned 32 bit integer from 
self in native-endian byte order. Read moreSource§fn get_i32(&mut self) -> i32
 
fn get_i32(&mut self) -> i32
Gets a signed 32 bit integer from 
self in big-endian byte order. Read moreSource§fn get_i32_le(&mut self) -> i32
 
fn get_i32_le(&mut self) -> i32
Gets a signed 32 bit integer from 
self in little-endian byte order. Read moreSource§fn get_i32_ne(&mut self) -> i32
 
fn get_i32_ne(&mut self) -> i32
Gets a signed 32 bit integer from 
self in native-endian byte order. Read moreSource§fn get_u64(&mut self) -> u64
 
fn get_u64(&mut self) -> u64
Gets an unsigned 64 bit integer from 
self in big-endian byte order. Read moreSource§fn get_u64_le(&mut self) -> u64
 
fn get_u64_le(&mut self) -> u64
Gets an unsigned 64 bit integer from 
self in little-endian byte order. Read moreSource§fn get_u64_ne(&mut self) -> u64
 
fn get_u64_ne(&mut self) -> u64
Gets an unsigned 64 bit integer from 
self in native-endian byte order. Read moreSource§fn get_i64(&mut self) -> i64
 
fn get_i64(&mut self) -> i64
Gets a signed 64 bit integer from 
self in big-endian byte order. Read moreSource§fn get_i64_le(&mut self) -> i64
 
fn get_i64_le(&mut self) -> i64
Gets a signed 64 bit integer from 
self in little-endian byte order. Read moreSource§fn get_i64_ne(&mut self) -> i64
 
fn get_i64_ne(&mut self) -> i64
Gets a signed 64 bit integer from 
self in native-endian byte order. Read moreSource§fn get_u128(&mut self) -> u128
 
fn get_u128(&mut self) -> u128
Gets an unsigned 128 bit integer from 
self in big-endian byte order. Read moreSource§fn get_u128_le(&mut self) -> u128
 
fn get_u128_le(&mut self) -> u128
Gets an unsigned 128 bit integer from 
self in little-endian byte order. Read moreSource§fn get_u128_ne(&mut self) -> u128
 
fn get_u128_ne(&mut self) -> u128
Gets an unsigned 128 bit integer from 
self in native-endian byte order. Read moreSource§fn get_i128(&mut self) -> i128
 
fn get_i128(&mut self) -> i128
Gets a signed 128 bit integer from 
self in big-endian byte order. Read moreSource§fn get_i128_le(&mut self) -> i128
 
fn get_i128_le(&mut self) -> i128
Gets a signed 128 bit integer from 
self in little-endian byte order. Read moreSource§fn get_i128_ne(&mut self) -> i128
 
fn get_i128_ne(&mut self) -> i128
Gets a signed 128 bit integer from 
self in native-endian byte order. Read moreSource§fn get_uint(&mut self, nbytes: usize) -> u64
 
fn get_uint(&mut self, nbytes: usize) -> u64
Gets an unsigned n-byte integer from 
self in big-endian byte order. Read moreSource§fn get_uint_le(&mut self, nbytes: usize) -> u64
 
fn get_uint_le(&mut self, nbytes: usize) -> u64
Gets an unsigned n-byte integer from 
self in little-endian byte order. Read moreSource§fn get_uint_ne(&mut self, nbytes: usize) -> u64
 
fn get_uint_ne(&mut self, nbytes: usize) -> u64
Gets an unsigned n-byte integer from 
self in native-endian byte order. Read moreSource§fn get_int(&mut self, nbytes: usize) -> i64
 
fn get_int(&mut self, nbytes: usize) -> i64
Gets a signed n-byte integer from 
self in big-endian byte order. Read moreSource§fn get_int_le(&mut self, nbytes: usize) -> i64
 
fn get_int_le(&mut self, nbytes: usize) -> i64
Gets a signed n-byte integer from 
self in little-endian byte order. Read moreSource§fn get_int_ne(&mut self, nbytes: usize) -> i64
 
fn get_int_ne(&mut self, nbytes: usize) -> i64
Gets a signed n-byte integer from 
self in native-endian byte order. Read moreSource§fn get_f32(&mut self) -> f32
 
fn get_f32(&mut self) -> f32
Gets an IEEE754 single-precision (4 bytes) floating point number from
self in big-endian byte order. Read moreSource§fn get_f32_le(&mut self) -> f32
 
fn get_f32_le(&mut self) -> f32
Gets an IEEE754 single-precision (4 bytes) floating point number from
self in little-endian byte order. Read moreSource§fn get_f32_ne(&mut self) -> f32
 
fn get_f32_ne(&mut self) -> f32
Gets an IEEE754 single-precision (4 bytes) floating point number from
self in native-endian byte order. Read moreSource§fn get_f64(&mut self) -> f64
 
fn get_f64(&mut self) -> f64
Gets an IEEE754 double-precision (8 bytes) floating point number from
self in big-endian byte order. Read moreSource§fn get_f64_le(&mut self) -> f64
 
fn get_f64_le(&mut self) -> f64
Gets an IEEE754 double-precision (8 bytes) floating point number from
self in little-endian byte order. Read moreSource§fn get_f64_ne(&mut self) -> f64
 
fn get_f64_ne(&mut self) -> f64
Gets an IEEE754 double-precision (8 bytes) floating point number from
self in native-endian byte order. Read moreSource§fn try_copy_to_slice(&mut self, dst: &mut [u8]) -> Result<(), TryGetError>
 
fn try_copy_to_slice(&mut self, dst: &mut [u8]) -> Result<(), TryGetError>
Source§fn try_get_u8(&mut self) -> Result<u8, TryGetError>
 
fn try_get_u8(&mut self) -> Result<u8, TryGetError>
Gets an unsigned 8 bit integer from 
self. Read moreSource§fn try_get_i8(&mut self) -> Result<i8, TryGetError>
 
fn try_get_i8(&mut self) -> Result<i8, TryGetError>
Gets a signed 8 bit integer from 
self. Read moreSource§fn try_get_u16(&mut self) -> Result<u16, TryGetError>
 
fn try_get_u16(&mut self) -> Result<u16, TryGetError>
Gets an unsigned 16 bit integer from 
self in big-endian byte order. Read moreSource§fn try_get_u16_le(&mut self) -> Result<u16, TryGetError>
 
fn try_get_u16_le(&mut self) -> Result<u16, TryGetError>
Gets an unsigned 16 bit integer from 
self in little-endian byte order. Read moreSource§fn try_get_u16_ne(&mut self) -> Result<u16, TryGetError>
 
fn try_get_u16_ne(&mut self) -> Result<u16, TryGetError>
Gets an unsigned 16 bit integer from 
self in native-endian byte order. Read moreSource§fn try_get_i16(&mut self) -> Result<i16, TryGetError>
 
fn try_get_i16(&mut self) -> Result<i16, TryGetError>
Gets a signed 16 bit integer from 
self in big-endian byte order. Read moreSource§fn try_get_i16_le(&mut self) -> Result<i16, TryGetError>
 
fn try_get_i16_le(&mut self) -> Result<i16, TryGetError>
Gets an signed 16 bit integer from 
self in little-endian byte order. Read moreSource§fn try_get_i16_ne(&mut self) -> Result<i16, TryGetError>
 
fn try_get_i16_ne(&mut self) -> Result<i16, TryGetError>
Gets a signed 16 bit integer from 
self in native-endian byte order. Read moreSource§fn try_get_u32(&mut self) -> Result<u32, TryGetError>
 
fn try_get_u32(&mut self) -> Result<u32, TryGetError>
Gets an unsigned 32 bit integer from 
self in big-endian byte order. Read moreSource§fn try_get_u32_le(&mut self) -> Result<u32, TryGetError>
 
fn try_get_u32_le(&mut self) -> Result<u32, TryGetError>
Gets an unsigned 32 bit integer from 
self in little-endian byte order. Read moreSource§fn try_get_u32_ne(&mut self) -> Result<u32, TryGetError>
 
fn try_get_u32_ne(&mut self) -> Result<u32, TryGetError>
Gets an unsigned 32 bit integer from 
self in native-endian byte order. Read moreSource§fn try_get_i32(&mut self) -> Result<i32, TryGetError>
 
fn try_get_i32(&mut self) -> Result<i32, TryGetError>
Gets a signed 32 bit integer from 
self in big-endian byte order. Read moreSource§fn try_get_i32_le(&mut self) -> Result<i32, TryGetError>
 
fn try_get_i32_le(&mut self) -> Result<i32, TryGetError>
Gets a signed 32 bit integer from 
self in little-endian byte order. Read moreSource§fn try_get_i32_ne(&mut self) -> Result<i32, TryGetError>
 
fn try_get_i32_ne(&mut self) -> Result<i32, TryGetError>
Gets a signed 32 bit integer from 
self in native-endian byte order. Read moreSource§fn try_get_u64(&mut self) -> Result<u64, TryGetError>
 
fn try_get_u64(&mut self) -> Result<u64, TryGetError>
Gets an unsigned 64 bit integer from 
self in big-endian byte order. Read moreSource§fn try_get_u64_le(&mut self) -> Result<u64, TryGetError>
 
fn try_get_u64_le(&mut self) -> Result<u64, TryGetError>
Gets an unsigned 64 bit integer from 
self in little-endian byte order. Read moreSource§fn try_get_u64_ne(&mut self) -> Result<u64, TryGetError>
 
fn try_get_u64_ne(&mut self) -> Result<u64, TryGetError>
Gets an unsigned 64 bit integer from 
self in native-endian byte order. Read moreSource§fn try_get_i64(&mut self) -> Result<i64, TryGetError>
 
fn try_get_i64(&mut self) -> Result<i64, TryGetError>
Gets a signed 64 bit integer from 
self in big-endian byte order. Read moreSource§fn try_get_i64_le(&mut self) -> Result<i64, TryGetError>
 
fn try_get_i64_le(&mut self) -> Result<i64, TryGetError>
Gets a signed 64 bit integer from 
self in little-endian byte order. Read moreSource§fn try_get_i64_ne(&mut self) -> Result<i64, TryGetError>
 
fn try_get_i64_ne(&mut self) -> Result<i64, TryGetError>
Gets a signed 64 bit integer from 
self in native-endian byte order. Read moreSource§fn try_get_u128(&mut self) -> Result<u128, TryGetError>
 
fn try_get_u128(&mut self) -> Result<u128, TryGetError>
Gets an unsigned 128 bit integer from 
self in big-endian byte order. Read moreSource§fn try_get_u128_le(&mut self) -> Result<u128, TryGetError>
 
fn try_get_u128_le(&mut self) -> Result<u128, TryGetError>
Gets an unsigned 128 bit integer from 
self in little-endian byte order. Read moreSource§fn try_get_u128_ne(&mut self) -> Result<u128, TryGetError>
 
fn try_get_u128_ne(&mut self) -> Result<u128, TryGetError>
Gets an unsigned 128 bit integer from 
self in native-endian byte order. Read moreSource§fn try_get_i128(&mut self) -> Result<i128, TryGetError>
 
fn try_get_i128(&mut self) -> Result<i128, TryGetError>
Gets a signed 128 bit integer from 
self in big-endian byte order. Read moreSource§fn try_get_i128_le(&mut self) -> Result<i128, TryGetError>
 
fn try_get_i128_le(&mut self) -> Result<i128, TryGetError>
Gets a signed 128 bit integer from 
self in little-endian byte order. Read moreSource§fn try_get_i128_ne(&mut self) -> Result<i128, TryGetError>
 
fn try_get_i128_ne(&mut self) -> Result<i128, TryGetError>
Gets a signed 128 bit integer from 
self in native-endian byte order. Read moreSource§fn try_get_uint(&mut self, nbytes: usize) -> Result<u64, TryGetError>
 
fn try_get_uint(&mut self, nbytes: usize) -> Result<u64, TryGetError>
Gets an unsigned n-byte integer from 
self in big-endian byte order. Read moreSource§fn try_get_uint_le(&mut self, nbytes: usize) -> Result<u64, TryGetError>
 
fn try_get_uint_le(&mut self, nbytes: usize) -> Result<u64, TryGetError>
Gets an unsigned n-byte integer from 
self in little-endian byte order. Read moreSource§fn try_get_uint_ne(&mut self, nbytes: usize) -> Result<u64, TryGetError>
 
fn try_get_uint_ne(&mut self, nbytes: usize) -> Result<u64, TryGetError>
Gets an unsigned n-byte integer from 
self in native-endian byte order. Read moreSource§fn try_get_int(&mut self, nbytes: usize) -> Result<i64, TryGetError>
 
fn try_get_int(&mut self, nbytes: usize) -> Result<i64, TryGetError>
Gets a signed n-byte integer from 
self in big-endian byte order. Read moreSource§fn try_get_int_le(&mut self, nbytes: usize) -> Result<i64, TryGetError>
 
fn try_get_int_le(&mut self, nbytes: usize) -> Result<i64, TryGetError>
Gets a signed n-byte integer from 
self in little-endian byte order. Read moreSource§fn try_get_int_ne(&mut self, nbytes: usize) -> Result<i64, TryGetError>
 
fn try_get_int_ne(&mut self, nbytes: usize) -> Result<i64, TryGetError>
Gets a signed n-byte integer from 
self in native-endian byte order. Read moreSource§fn try_get_f32(&mut self) -> Result<f32, TryGetError>
 
fn try_get_f32(&mut self) -> Result<f32, TryGetError>
Gets an IEEE754 single-precision (4 bytes) floating point number from
self in big-endian byte order. Read moreSource§fn try_get_f32_le(&mut self) -> Result<f32, TryGetError>
 
fn try_get_f32_le(&mut self) -> Result<f32, TryGetError>
Gets an IEEE754 single-precision (4 bytes) floating point number from
self in little-endian byte order. Read moreSource§fn try_get_f32_ne(&mut self) -> Result<f32, TryGetError>
 
fn try_get_f32_ne(&mut self) -> Result<f32, TryGetError>
Gets an IEEE754 single-precision (4 bytes) floating point number from
self in native-endian byte order. Read moreSource§fn try_get_f64(&mut self) -> Result<f64, TryGetError>
 
fn try_get_f64(&mut self) -> Result<f64, TryGetError>
Gets an IEEE754 double-precision (8 bytes) floating point number from
self in big-endian byte order. Read moreSource§fn try_get_f64_le(&mut self) -> Result<f64, TryGetError>
 
fn try_get_f64_le(&mut self) -> Result<f64, TryGetError>
Gets an IEEE754 double-precision (8 bytes) floating point number from
self in little-endian byte order. Read moreSource§fn try_get_f64_ne(&mut self) -> Result<f64, TryGetError>
 
fn try_get_f64_ne(&mut self) -> Result<f64, TryGetError>
Gets an IEEE754 double-precision (8 bytes) floating point number from
self in native-endian byte order. Read moreSource§impl<B: Buf> Extend<B> for BufList
 
impl<B: Buf> Extend<B> for BufList
Source§fn extend<T: IntoIterator<Item = B>>(&mut self, iter: T)
 
fn extend<T: IntoIterator<Item = B>>(&mut self, iter: T)
Extends a collection with the contents of an iterator. Read more
Source§fn extend_one(&mut self, item: A)
 
fn extend_one(&mut self, item: A)
🔬This is a nightly-only experimental API. (
extend_one)Extends a collection with exactly one element.
Source§fn extend_reserve(&mut self, additional: usize)
 
fn extend_reserve(&mut self, additional: usize)
🔬This is a nightly-only experimental API. (
extend_one)Reserves capacity in a collection for the given number of additional elements. Read more
Source§impl<B: Buf> FromIterator<B> for BufList
 
impl<B: Buf> FromIterator<B> for BufList
Source§fn from_iter<T: IntoIterator<Item = B>>(iter: T) -> Self
 
fn from_iter<T: IntoIterator<Item = B>>(iter: T) -> Self
Creates a value from an iterator. Read more
Source§impl<'a> IntoIterator for &'a BufList
 
impl<'a> IntoIterator for &'a BufList
Auto Trait Implementations§
impl !Freeze for BufList
impl RefUnwindSafe for BufList
impl Send for BufList
impl Sync for BufList
impl Unpin for BufList
impl UnwindSafe for BufList
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
    T: ?Sized,
 
impl<T> BorrowMut<T> for Twhere
    T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
 
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more