Trait nalgebra::base::storage::StorageMut
source · pub unsafe trait StorageMut<T: Scalar, R: Dim, C: Dim = U1>: Storage<T, R, C> {
// Required methods
fn ptr_mut(&mut self) -> *mut T;
fn as_mut_slice(&mut self) -> &mut [T];
// Provided methods
unsafe fn get_address_unchecked_linear_mut(&mut self, i: usize) -> *mut T { ... }
unsafe fn get_address_unchecked_mut(
&mut self,
irow: usize,
icol: usize
) -> *mut T { ... }
unsafe fn get_unchecked_linear_mut(&mut self, i: usize) -> &mut T { ... }
unsafe fn get_unchecked_mut(&mut self, irow: usize, icol: usize) -> &mut T { ... }
unsafe fn swap_unchecked_linear(&mut self, i1: usize, i2: usize) { ... }
unsafe fn swap_unchecked(
&mut self,
row_col1: (usize, usize),
row_col2: (usize, usize)
) { ... }
}
Expand description
Trait implemented by matrix data storage that can provide a mutable access to its elements.
Note that a mutable access does not mean that the matrix owns its data. For example, a mutable matrix slice can provide mutable access to its elements even if it does not own its data (it contains only an internal reference to them).
Required Methods§
sourcefn as_mut_slice(&mut self) -> &mut [T]
fn as_mut_slice(&mut self) -> &mut [T]
Retrieves the mutable data buffer as a contiguous slice.
Matrix components may not be contiguous, depending on its strides.
Provided Methods§
sourceunsafe fn get_address_unchecked_linear_mut(&mut self, i: usize) -> *mut T
unsafe fn get_address_unchecked_linear_mut(&mut self, i: usize) -> *mut T
Gets the mutable address of the i-th matrix component without performing bound-checking.
sourceunsafe fn get_address_unchecked_mut(
&mut self,
irow: usize,
icol: usize
) -> *mut T
unsafe fn get_address_unchecked_mut( &mut self, irow: usize, icol: usize ) -> *mut T
Gets the mutable address of the i-th matrix component without performing bound-checking.
sourceunsafe fn get_unchecked_linear_mut(&mut self, i: usize) -> &mut T
unsafe fn get_unchecked_linear_mut(&mut self, i: usize) -> &mut T
Retrieves a mutable reference to the i-th element without bound-checking.
sourceunsafe fn get_unchecked_mut(&mut self, irow: usize, icol: usize) -> &mut T
unsafe fn get_unchecked_mut(&mut self, irow: usize, icol: usize) -> &mut T
Retrieves a mutable reference to the element at (irow, icol)
without bound-checking.
sourceunsafe fn swap_unchecked_linear(&mut self, i1: usize, i2: usize)
unsafe fn swap_unchecked_linear(&mut self, i1: usize, i2: usize)
Swaps two elements using their linear index without bound-checking.