ZeroSpVecTrait

Trait ZeroSpVecTrait 

Source
pub trait ZeroSpVecTrait<N>:
    Clone
    + Default
    + Index<usize, Output = N>
where N: Num,
{
Show 28 methods // Required methods unsafe fn ind_ptr(&self) -> *mut u32; unsafe fn val_ptr(&self) -> *mut N; unsafe fn raw_push(&mut self, index: usize, value: N); fn ind_binary_search( &self, index: usize, cut_down: usize, ) -> Result<usize, usize>; fn new() -> Self; fn with_capacity(cap: usize) -> Self; fn reserve(&mut self, additional: usize); fn shrink_to_fit(&mut self); fn is_empty(&self) -> bool; fn len(&self) -> usize; unsafe fn set_len(&mut self, len: usize); fn capacity(&self) -> usize; fn nnz(&self) -> usize; fn add_dim(&mut self, dim: usize); fn clear(&mut self); fn push(&mut self, elem: N); fn pop(&mut self) -> Option<N>; fn get(&self, index: usize) -> Option<&N>; fn raw_get(&self, index: usize) -> Option<ValueWithIndex<'_, N>>; fn get_with_cut_down(&self, index: usize, cut_down: usize) -> Option<&N>; fn raw_get_with_cut_down( &self, index: usize, cut_down: usize, ) -> Option<ValueWithIndex<'_, N>>; fn get_ind(&self, index: usize) -> Option<usize>; fn remove(&mut self, index: usize) -> N; fn from_vec(vec: Vec<N>) -> Self; unsafe fn from_raw_iter( iter: impl Iterator<Item = (usize, N)>, len: usize, ) -> Self; unsafe fn from_sparse_iter( iter: impl Iterator<Item = (usize, N)>, len: usize, ) -> Self; fn iter(&self) -> ZeroSpVecIter<'_, N> ; fn raw_iter(&self) -> ZeroSpVecRawIter<'_, N> ;
}

Required Methods§

Source

unsafe fn ind_ptr(&self) -> *mut u32

Source

unsafe fn val_ptr(&self) -> *mut N

Source

unsafe fn raw_push(&mut self, index: usize, value: N)

Source

fn new() -> Self

Source

fn with_capacity(cap: usize) -> Self

Source

fn reserve(&mut self, additional: usize)

Source

fn shrink_to_fit(&mut self)

Source

fn is_empty(&self) -> bool

Source

fn len(&self) -> usize

Source

unsafe fn set_len(&mut self, len: usize)

Source

fn capacity(&self) -> usize

Source

fn nnz(&self) -> usize

Source

fn add_dim(&mut self, dim: usize)

Source

fn clear(&mut self)

Source

fn push(&mut self, elem: N)

Source

fn pop(&mut self) -> Option<N>

Source

fn get(&self, index: usize) -> Option<&N>

Source

fn raw_get(&self, index: usize) -> Option<ValueWithIndex<'_, N>>

Source

fn get_with_cut_down(&self, index: usize, cut_down: usize) -> Option<&N>

Source

fn raw_get_with_cut_down( &self, index: usize, cut_down: usize, ) -> Option<ValueWithIndex<'_, N>>

Source

fn get_ind(&self, index: usize) -> Option<usize>

Source

fn remove(&mut self, index: usize) -> N

Source

fn from_vec(vec: Vec<N>) -> Self

Source

unsafe fn from_raw_iter( iter: impl Iterator<Item = (usize, N)>, len: usize, ) -> Self

Source

unsafe fn from_sparse_iter( iter: impl Iterator<Item = (usize, N)>, len: usize, ) -> Self

Source

fn iter(&self) -> ZeroSpVecIter<'_, N>

Source

fn raw_iter(&self) -> ZeroSpVecRawIter<'_, N>

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§

Source§

impl<N> ZeroSpVecTrait<N> for ZeroSpVec<N>
where N: Num,