Trait rin::math::storage::ContiguousStorage [−][src]
pub unsafe trait ContiguousStorage<N, R, C = U1>: Storage<N, R, C> where
C: Dim,
N: Scalar,
R: Dim, { }
A matrix storage that is stored contiguously in memory.
The storage requirement means that for any value of i
in [0, nrows * ncols[
, the value
.get_unchecked_linear
returns one of the matrix component. This trait is unsafe because
failing to comply to this may cause Undefined Behaviors.
Implementors
impl<N, R> ContiguousStorage<N, R, Dynamic> for MatrixVec<N, R, Dynamic> where
N: Scalar,
R: DimName,
DefaultAllocator: Allocator<N, R, Dynamic>,
<DefaultAllocator as Allocator<N, R, Dynamic>>::Buffer == MatrixVec<N, R, Dynamic>,impl<N, C> ContiguousStorage<N, Dynamic, C> for MatrixVec<N, Dynamic, C> where
C: Dim,
N: Scalar,
DefaultAllocator: Allocator<N, Dynamic, C>,
<DefaultAllocator as Allocator<N, Dynamic, C>>::Buffer == MatrixVec<N, Dynamic, C>,impl<N, R, C> ContiguousStorage<N, R, C> for MatrixArray<N, R, C> where
C: DimName,
N: Scalar,
R: DimName,
<R as DimName>::Value: Mul<<C as DimName>::Value>,
<<R as DimName>::Value as Mul<<C as DimName>::Value>>::Output: ArrayLength<N>,
DefaultAllocator: Allocator<N, R, C>,
<DefaultAllocator as Allocator<N, R, C>>::Buffer == MatrixArray<N, R, C>,