Trait ToSlice

Source
pub trait ToSlice<T> {
    // Required methods
    fn to_slice(&self) -> &[T];
    fn len(&self) -> usize;
    fn is_empty(&self) -> bool;
    fn alloc_len(&self) -> usize;
    fn try_resize(&mut self, len: usize) -> Result<(), ErrorReason>;
}
Expand description

A trait to convert a type into a slice.

Required Methods§

Source

fn to_slice(&self) -> &[T]

Convert to a slice.

Source

fn len(&self) -> usize

Length of a slice.

Source

fn is_empty(&self) -> bool

Indicates whether or not this storage type is empty.

Source

fn alloc_len(&self) -> usize

Gets the allocated length of a storage. It’s expected that self.alloc_len() >= self.len() in all cases.

Source

fn try_resize(&mut self, len: usize) -> Result<(), ErrorReason>

Resizes the storage to support at least len elements or returns an error if resizing isn’t supported.

Implementations on Foreign Types§

Source§

impl<'a, T> ToSlice<T> for &'a [T]

Source§

fn to_slice(&self) -> &[T]

Source§

fn len(&self) -> usize

Source§

fn is_empty(&self) -> bool

Source§

fn alloc_len(&self) -> usize

Source§

fn try_resize(&mut self, len: usize) -> Result<(), ErrorReason>

Source§

impl<'a, T> ToSlice<T> for &'a mut [T]

Source§

fn to_slice(&self) -> &[T]

Source§

fn len(&self) -> usize

Source§

fn is_empty(&self) -> bool

Source§

fn alloc_len(&self) -> usize

Source§

fn try_resize(&mut self, len: usize) -> Result<(), ErrorReason>

Source§

impl<A, const CAP: usize> ToSlice<A> for ArrayVec<A, CAP>
where A: RealNumber,

Source§

fn to_slice(&self) -> &[A]

Source§

fn len(&self) -> usize

Source§

fn is_empty(&self) -> bool

Source§

fn alloc_len(&self) -> usize

Source§

fn try_resize(&mut self, len: usize) -> Result<(), ErrorReason>

Source§

impl<T> ToSlice<T> for [T]

Source§

fn to_slice(&self) -> &[T]

Source§

fn len(&self) -> usize

Source§

fn is_empty(&self) -> bool

Source§

fn alloc_len(&self) -> usize

Source§

fn try_resize(&mut self, len: usize) -> Result<(), ErrorReason>

Source§

impl<T> ToSlice<T> for Box<[T]>

Source§

fn to_slice(&self) -> &[T]

Source§

fn len(&self) -> usize

Source§

fn is_empty(&self) -> bool

Source§

fn alloc_len(&self) -> usize

Source§

fn try_resize(&mut self, len: usize) -> Result<(), ErrorReason>

Source§

impl<T> ToSlice<T> for Vec<T>
where T: RealNumber,

Source§

fn to_slice(&self) -> &[T]

Source§

fn len(&self) -> usize

Source§

fn is_empty(&self) -> bool

Source§

fn alloc_len(&self) -> usize

Source§

fn try_resize(&mut self, len: usize) -> Result<(), ErrorReason>

Implementors§

Source§

impl<'a, T> ToSlice<T> for FixedLenBufferBurrow<'a, T>
where T: RealNumber + 'a,

Source§

impl<'a, T> ToSlice<T> for NoTradeBufferBurrow<'a, T>
where T: RealNumber + 'a,

Source§

impl<'a, T> ToSlice<T> for SingleBufferBurrow<'a, T>
where T: RealNumber + 'a,

Source§

impl<T> ToSlice<T> for NoBufferBurrow<T>
where T: RealNumber,