Skip to main content

ToSlice

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.

Dyn Compatibility§

This trait is dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

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 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>

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>

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,