Struct na::base::SliceStorageMut [−][src]
pub struct SliceStorageMut<'a, N, R, C, RStride, CStride> where
C: Dim,
N: Scalar,
RStride: Dim,
CStride: Dim,
R: Dim, { /* fields omitted */ }
A mutable matrix data storage for mutable matrix slice. Only contains an internal mutable reference to another matrix data storage.
Implementations
impl<'a, N, R, C, RStride, CStride> SliceStorageMut<'a, N, R, C, RStride, CStride> where
C: Dim,
N: Scalar,
RStride: Dim,
CStride: Dim,
R: Dim,
[src]
impl<'a, N, R, C, RStride, CStride> SliceStorageMut<'a, N, R, C, RStride, CStride> where
C: Dim,
N: Scalar,
RStride: Dim,
CStride: Dim,
R: Dim,
[src]pub unsafe fn from_raw_parts(
ptr: *mut N,
shape: (R, C),
strides: (RStride, CStride)
) -> SliceStorageMut<'a, N, R, C, RStride, CStride> where
RStride: Dim,
CStride: Dim,
[src]
ptr: *mut N,
shape: (R, C),
strides: (RStride, CStride)
) -> SliceStorageMut<'a, N, R, C, RStride, CStride> where
RStride: Dim,
CStride: Dim,
Create a new matrix slice without bound checking and from a raw pointer.
impl<'a, N, R, C> SliceStorageMut<'a, N, R, C, Dynamic, Dynamic> where
C: Dim,
N: Scalar,
R: Dim,
[src]
impl<'a, N, R, C> SliceStorageMut<'a, N, R, C, Dynamic, Dynamic> where
C: Dim,
N: Scalar,
R: Dim,
[src]pub unsafe fn new_unchecked<RStor, CStor, S>(
storage: &'a mut S,
start: (usize, usize),
shape: (R, C)
) -> SliceStorageMut<'a, N, R, C, <S as Storage<N, RStor, CStor>>::RStride, <S as Storage<N, RStor, CStor>>::CStride> where
S: StorageMut<N, RStor, CStor>,
RStor: Dim,
CStor: Dim,
[src]
storage: &'a mut S,
start: (usize, usize),
shape: (R, C)
) -> SliceStorageMut<'a, N, R, C, <S as Storage<N, RStor, CStor>>::RStride, <S as Storage<N, RStor, CStor>>::CStride> where
S: StorageMut<N, RStor, CStor>,
RStor: Dim,
CStor: Dim,
Create a new matrix slice without bound checking.
pub unsafe fn new_with_strides_unchecked<S, RStor, CStor, RStride, CStride>(
storage: &'a mut S,
start: (usize, usize),
shape: (R, C),
strides: (RStride, CStride)
) -> SliceStorageMut<'a, N, R, C, RStride, CStride> where
S: StorageMut<N, RStor, CStor>,
RStride: Dim,
CStride: Dim,
RStor: Dim,
CStor: Dim,
[src]
storage: &'a mut S,
start: (usize, usize),
shape: (R, C),
strides: (RStride, CStride)
) -> SliceStorageMut<'a, N, R, C, RStride, CStride> where
S: StorageMut<N, RStor, CStor>,
RStride: Dim,
CStride: Dim,
RStor: Dim,
CStor: Dim,
Create a new matrix slice without bound checking.
Trait Implementations
impl<'a, N, R, C, RStride, CStride> Debug for SliceStorageMut<'a, N, R, C, RStride, CStride> where
C: Debug + Dim,
N: Debug + Scalar,
RStride: Debug + Dim,
CStride: Debug + Dim,
R: Debug + Dim,
[src]
impl<'a, N, R, C, RStride, CStride> Debug for SliceStorageMut<'a, N, R, C, RStride, CStride> where
C: Debug + Dim,
N: Debug + Scalar,
RStride: Debug + Dim,
CStride: Debug + Dim,
R: Debug + Dim,
[src]impl<'a, N, R, C, RStride, CStride> Storage<N, R, C> for SliceStorageMut<'a, N, R, C, RStride, CStride> where
C: Dim,
N: Scalar,
RStride: Dim,
CStride: Dim,
R: Dim,
[src]
impl<'a, N, R, C, RStride, CStride> Storage<N, R, C> for SliceStorageMut<'a, N, R, C, RStride, CStride> where
C: Dim,
N: Scalar,
RStride: Dim,
CStride: Dim,
R: Dim,
[src]type RStride = RStride
The static stride of this storage’s rows.
type CStride = CStride
The static stride of this storage’s columns.
pub fn ptr(&self) -> *const N
[src]
pub fn shape(&self) -> (R, C)
[src]
pub fn strides(
&self
) -> (<SliceStorageMut<'a, N, R, C, RStride, CStride> as Storage<N, R, C>>::RStride, <SliceStorageMut<'a, N, R, C, RStride, CStride> as Storage<N, R, C>>::CStride)
[src]
&self
) -> (<SliceStorageMut<'a, N, R, C, RStride, CStride> as Storage<N, R, C>>::RStride, <SliceStorageMut<'a, N, R, C, RStride, CStride> as Storage<N, R, C>>::CStride)
pub fn is_contiguous(&self) -> bool
[src]
pub fn into_owned(self) -> <DefaultAllocator as Allocator<N, R, C>>::Buffer where
DefaultAllocator: Allocator<N, R, C>,
[src]
DefaultAllocator: Allocator<N, R, C>,
pub fn clone_owned(&self) -> <DefaultAllocator as Allocator<N, R, C>>::Buffer where
DefaultAllocator: Allocator<N, R, C>,
[src]
DefaultAllocator: Allocator<N, R, C>,
pub fn as_slice(&self) -> &[N]ⓘ
[src]
pub fn linear_index(&self, irow: usize, icol: usize) -> usize
[src]
pub unsafe fn get_address_unchecked_linear(&self, i: usize) -> *const N
[src]
pub unsafe fn get_address_unchecked(&self, irow: usize, icol: usize) -> *const N
[src]
pub unsafe fn get_unchecked_linear(&self, i: usize) -> &N
[src]
pub unsafe fn get_unchecked(&self, irow: usize, icol: usize) -> &N
[src]
impl<'a, N, R, C, RStride, CStride> StorageMut<N, R, C> for SliceStorageMut<'a, N, R, C, RStride, CStride> where
C: Dim,
N: Scalar,
RStride: Dim,
CStride: Dim,
R: Dim,
[src]
impl<'a, N, R, C, RStride, CStride> StorageMut<N, R, C> for SliceStorageMut<'a, N, R, C, RStride, CStride> where
C: Dim,
N: Scalar,
RStride: Dim,
CStride: Dim,
R: Dim,
[src]pub fn ptr_mut(&mut self) -> *mut N
[src]
pub fn as_mut_slice(&mut self) -> &mut [N]ⓘ
[src]
pub unsafe fn get_address_unchecked_linear_mut(&mut self, i: usize) -> *mut N
[src]
pub unsafe fn get_address_unchecked_mut(
&mut self,
irow: usize,
icol: usize
) -> *mut N
[src]
&mut self,
irow: usize,
icol: usize
) -> *mut N
pub unsafe fn get_unchecked_linear_mut(&mut self, i: usize) -> &mut N
[src]
pub unsafe fn get_unchecked_mut(&mut self, irow: usize, icol: usize) -> &mut N
[src]
pub unsafe fn swap_unchecked_linear(&mut self, i1: usize, i2: usize)
[src]
pub unsafe fn swap_unchecked(
&mut self,
row_col1: (usize, usize),
row_col2: (usize, usize)
)
[src]
&mut self,
row_col1: (usize, usize),
row_col2: (usize, usize)
)
impl<'a, N, R, C> ContiguousStorage<N, R, C> for SliceStorageMut<'a, N, R, C, U1, R> where
C: Dim + IsNotStaticOne,
N: Scalar,
R: DimName,
[src]
C: Dim + IsNotStaticOne,
N: Scalar,
R: DimName,
impl<'a, N, R, CStride> ContiguousStorage<N, R, U1> for SliceStorageMut<'a, N, R, U1, U1, CStride> where
N: Scalar,
CStride: Dim,
R: Dim,
[src]
N: Scalar,
CStride: Dim,
R: Dim,
impl<'a, N, R, C> ContiguousStorageMut<N, R, C> for SliceStorageMut<'a, N, R, C, U1, R> where
C: Dim + IsNotStaticOne,
N: Scalar,
R: DimName,
[src]
C: Dim + IsNotStaticOne,
N: Scalar,
R: DimName,
impl<'a, N, R, CStride> ContiguousStorageMut<N, R, U1> for SliceStorageMut<'a, N, R, U1, U1, CStride> where
N: Scalar,
CStride: Dim,
R: Dim,
[src]
N: Scalar,
CStride: Dim,
R: Dim,
impl<'a, N, R, C, RStride, CStride> Send for SliceStorageMut<'a, N, R, C, RStride, CStride> where
C: Dim,
N: Scalar + Send,
RStride: Dim,
CStride: Dim,
R: Dim,
[src]
C: Dim,
N: Scalar + Send,
RStride: Dim,
CStride: Dim,
R: Dim,
impl<'a, N, R, C, RStride, CStride> Sync for SliceStorageMut<'a, N, R, C, RStride, CStride> where
C: Dim,
N: Scalar + Sync,
RStride: Dim,
CStride: Dim,
R: Dim,
[src]
C: Dim,
N: Scalar + Sync,
RStride: Dim,
CStride: Dim,
R: Dim,
Auto Trait Implementations
impl<'a, N, R, C, RStride, CStride> RefUnwindSafe for SliceStorageMut<'a, N, R, C, RStride, CStride> where
C: RefUnwindSafe,
CStride: RefUnwindSafe,
N: RefUnwindSafe,
R: RefUnwindSafe,
RStride: RefUnwindSafe,
C: RefUnwindSafe,
CStride: RefUnwindSafe,
N: RefUnwindSafe,
R: RefUnwindSafe,
RStride: RefUnwindSafe,
impl<'a, N, R, C, RStride, CStride> Unpin for SliceStorageMut<'a, N, R, C, RStride, CStride> where
C: Unpin,
CStride: Unpin,
R: Unpin,
RStride: Unpin,
C: Unpin,
CStride: Unpin,
R: Unpin,
RStride: Unpin,
impl<'a, N, R, C, RStride, CStride> !UnwindSafe for SliceStorageMut<'a, N, R, C, RStride, CStride>
Blanket Implementations
impl<SS, SP> SupersetOf<SS> for SP where
SS: SubsetOf<SP>,
[src]
impl<SS, SP> SupersetOf<SS> for SP where
SS: SubsetOf<SP>,
[src]