pub trait ZeroSpVecTrait<N>:
Clone
+ Default
+ Index<usize, Output = N>where
N: Num,{
Show 25 methods
// Required methods
unsafe fn ind_ptr(&self) -> *mut usize;
unsafe fn val_ptr(&self) -> *mut N;
unsafe fn raw_push(&mut self, index: usize, value: N);
fn ind_binary_search(&self, index: &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;
fn len_mut(&mut self) -> &mut 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 get_ind(&self, index: usize) -> Option<usize>;
fn remove(&mut self, index: usize) -> N;
fn from_vec(vec: Vec<N>) -> Self;
fn from_raw_iter(iter: impl Iterator<Item = (usize, N)>) -> Self;
fn from_sparse_iter(iter: impl Iterator<Item = (usize, N)>) -> Self;
fn iter(&self) -> ZeroSpVecIter<'_, N> ⓘ;
fn raw_iter(&self) -> ZeroSpVecRawIter<'_, N> ⓘ;
}Required Methods§
unsafe fn ind_ptr(&self) -> *mut usize
unsafe fn val_ptr(&self) -> *mut N
unsafe fn raw_push(&mut self, index: usize, value: N)
fn ind_binary_search(&self, index: &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
fn len_mut(&mut self) -> &mut 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 get_ind(&self, index: usize) -> Option<usize>
fn remove(&mut self, index: usize) -> N
fn from_vec(vec: Vec<N>) -> Self
fn from_raw_iter(iter: impl Iterator<Item = (usize, N)>) -> Self
fn from_sparse_iter(iter: impl Iterator<Item = (usize, N)>) -> Self
fn iter(&self) -> ZeroSpVecIter<'_, N> ⓘ
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.