pub struct SgList { /* private fields */ }Expand description
Wrapper for a C-style scatter gather list
Implementations§
Source§impl SgList
impl SgList
Sourcepub fn new(iovec: *const iovec, count: usize) -> Self
pub fn new(iovec: *const iovec, count: usize) -> Self
Constructs new SgList object from raw arguments
Sourcepub fn into_inner(self) -> (*const iovec, usize)
pub fn into_inner(self) -> (*const iovec, usize)
Deconstructs the SgList object into original building blocks.
Sourcepub unsafe fn index_ref_unchecked(&self, idx: isize) -> &iovec
pub unsafe fn index_ref_unchecked(&self, idx: isize) -> &iovec
Returns a reference to a idx’ element of this Scatter Gather List
pub unsafe fn index_unchecked(&self, idx: isize) -> iovec
Sourcepub unsafe fn iter(&self) -> impl Iterator<Item = &iovec>
pub unsafe fn iter(&self) -> impl Iterator<Item = &iovec>
Iterates over &iovec stored in this SgList
pub unsafe fn into_iter(self) -> impl Iterator<Item = iovec>
Sourcepub unsafe fn iter_slices(&self) -> impl Iterator<Item = &[u8]>
pub unsafe fn iter_slices(&self) -> impl Iterator<Item = &[u8]>
Iterates over byte slices &u8
pub unsafe fn iter_static_slices(self) -> impl Iterator<Item = &'static [u8]>
Sourcepub unsafe fn iter_slices_mut(&mut self) -> impl Iterator<Item = &mut [u8]>
pub unsafe fn iter_slices_mut(&mut self) -> impl Iterator<Item = &mut [u8]>
Iterates over byte slices &u8
Sourcepub unsafe fn ranges(&self) -> impl Iterator<Item = Range<usize>> + '_
pub unsafe fn ranges(&self) -> impl Iterator<Item = Range<usize>> + '_
Iterates over tuples of &iovec and associated Range describing this iovec position in
the whole SgList
pub unsafe fn iter_range(&self) -> impl Iterator<Item = (&iovec, Range<usize>)>
Sourcepub unsafe fn iter_slices_range(
&self,
) -> impl Iterator<Item = (&[u8], Range<usize>)>
pub unsafe fn iter_slices_range( &self, ) -> impl Iterator<Item = (&[u8], Range<usize>)>
Iterates over tuples of &[u8] slices and associated Range describing this slice
position in the whole SgList
Sourcepub unsafe fn iter_slices_range_mut(
&mut self,
) -> impl Iterator<Item = (&mut [u8], Range<usize>)>
pub unsafe fn iter_slices_range_mut( &mut self, ) -> impl Iterator<Item = (&mut [u8], Range<usize>)>
Iterates over tuples of &mut [u8] slices and associated Range describing this slice
position in the whole SgList.
Sourcepub unsafe fn iter_masked(
&self,
mask: Range<usize>,
) -> impl Iterator<Item = iovec> + '_
pub unsafe fn iter_masked( &self, mask: Range<usize>, ) -> impl Iterator<Item = iovec> + '_
Given a mask iterates over iovec that a visible after masking
Trait Implementations§
Source§impl<'de> Deserialize<'de> for SgList
impl<'de> Deserialize<'de> for SgList
Source§fn deserialize<D>(_deserializer: D) -> Result<Self, D::Error>where
D: Deserializer<'de>,
fn deserialize<D>(_deserializer: D) -> Result<Self, D::Error>where
D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
impl StructuralPartialEq for SgList
Auto Trait Implementations§
impl Freeze for SgList
impl RefUnwindSafe for SgList
impl !Send for SgList
impl !Sync for SgList
impl Unpin for SgList
impl UnwindSafe for SgList
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