pub struct ZeroCopyCyclicVec<'a, L, T, const PAD: bool = true>{ /* private fields */ }Implementations§
Source§impl<'a, L, T, const PAD: bool> ZeroCopyCyclicVec<'a, L, T, PAD>
impl<'a, L, T, const PAD: bool> ZeroCopyCyclicVec<'a, L, T, PAD>
pub fn new(capacity: L, bytes: &'a mut [u8]) -> Result<Self, ZeroCopyError>
pub fn new_at( capacity: L, bytes: &'a mut [u8], ) -> Result<(Self, &'a mut [u8]), ZeroCopyError>
pub fn from_bytes(bytes: &'a mut [u8]) -> Result<Self, ZeroCopyError>
pub fn from_bytes_at( bytes: &'a mut [u8], ) -> Result<(Self, &'a mut [u8]), ZeroCopyError>
pub fn push(&mut self, value: T)
pub fn clear(&mut self)
pub fn first(&self) -> Option<&T>
pub fn first_mut(&mut self) -> Option<&mut T>
pub fn last(&self) -> Option<&T>
pub fn last_mut(&mut self) -> Option<&mut T>
Sourcepub fn first_index(&self) -> usize
pub fn first_index(&self) -> usize
First index is the next index after the last index mod capacity.
pub fn last_index(&self) -> usize
pub fn iter(&self) -> ZeroCopyCyclicVecIterator<'_, L, T, PAD> ⓘ
pub fn iter_from( &self, start: usize, ) -> Result<ZeroCopyCyclicVecIterator<'_, L, T, PAD>, ZeroCopyError>
pub fn metadata_size() -> usize
pub fn data_size(capacity: L) -> usize
pub fn required_size_for_capacity(capacity: L) -> usize
pub fn len(&self) -> usize
pub fn capacity(&self) -> usize
pub fn is_empty(&self) -> bool
pub fn get(&self, index: usize) -> Option<&T>
pub fn get_mut(&mut self, index: usize) -> Option<&mut T>
pub fn as_slice(&self) -> &[T]
pub fn as_mut_slice(&mut self) -> &mut [T]
Trait Implementations§
Source§impl<L, T, const PAD: bool> Debug for ZeroCopyCyclicVec<'_, L, T, PAD>
impl<L, T, const PAD: bool> Debug for ZeroCopyCyclicVec<'_, L, T, PAD>
Source§impl<L, T, const PAD: bool> PartialEq for ZeroCopyCyclicVec<'_, L, T, PAD>
impl<L, T, const PAD: bool> PartialEq for ZeroCopyCyclicVec<'_, L, T, PAD>
Auto Trait Implementations§
impl<'a, L, T, const PAD: bool> Freeze for ZeroCopyCyclicVec<'a, L, T, PAD>
impl<'a, L, T, const PAD: bool> RefUnwindSafe for ZeroCopyCyclicVec<'a, L, T, PAD>
impl<'a, L, T, const PAD: bool> Send for ZeroCopyCyclicVec<'a, L, T, PAD>
impl<'a, L, T, const PAD: bool> Sync for ZeroCopyCyclicVec<'a, L, T, PAD>
impl<'a, L, T, const PAD: bool> Unpin for ZeroCopyCyclicVec<'a, L, T, PAD>
impl<'a, L, T, const PAD: bool = true> !UnwindSafe for ZeroCopyCyclicVec<'a, L, T, PAD>
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