Storage

Trait Storage 

Source
pub unsafe trait Storage<T, R, C = Const<1>>: RawStorage<T, R, C>
where R: Dim, C: Dim,
{ // Required methods fn into_owned(self) -> <DefaultAllocator as Allocator<T, R, C>>::Buffer where DefaultAllocator: Allocator<T, R, C>; fn clone_owned(&self) -> <DefaultAllocator as Allocator<T, R, C>>::Buffer where DefaultAllocator: Allocator<T, R, C>; }
Expand description

Trait shared by all matrix data storage that don’t contain any uninitialized elements.

Required Methods§

Source

fn into_owned(self) -> <DefaultAllocator as Allocator<T, R, C>>::Buffer
where DefaultAllocator: Allocator<T, R, C>,

Builds a matrix data storage that does not contain any reference.

Source

fn clone_owned(&self) -> <DefaultAllocator as Allocator<T, R, C>>::Buffer
where DefaultAllocator: Allocator<T, R, C>,

Clones this data storage to one that does not contain any reference.

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<'a, T, R, C, RStride, CStride> Storage<T, R, C> for SliceStorage<'a, T, R, C, RStride, CStride>
where T: Scalar, R: Dim, C: Dim, RStride: Dim, CStride: Dim,

Source§

impl<'a, T, R, C, RStride, CStride> Storage<T, R, C> for SliceStorageMut<'a, T, R, C, RStride, CStride>
where T: Scalar, R: Dim, C: Dim, RStride: Dim, CStride: Dim,

Source§

impl<T, C> Storage<T, Dynamic, C> for VecStorage<T, Dynamic, C>
where T: Scalar, C: Dim, DefaultAllocator: Allocator<T, Dynamic, C, Buffer = VecStorage<T, Dynamic, C>>,

Source§

impl<T, R> Storage<T, R, Dynamic> for VecStorage<T, R, Dynamic>
where T: Scalar, R: DimName, DefaultAllocator: Allocator<T, R, Dynamic, Buffer = VecStorage<T, R, Dynamic>>,

Source§

impl<T, const R: usize, const C: usize> Storage<T, Const<R>, Const<C>> for ArrayStorage<T, R, C>
where T: Scalar, DefaultAllocator: Allocator<T, Const<R>, Const<C>, Buffer = ArrayStorage<T, R, C>>,