Trait nalgebra::base::storage::ReshapableStorage[][src]

pub trait ReshapableStorage<N, R1, C1, R2, C2>: Storage<N, R1, C1> where
    N: Scalar,
    R1: Dim,
    C1: Dim,
    R2: Dim,
    C2: Dim
{ type Output: Storage<N, R2, C2>; fn reshape_generic(self, nrows: R2, ncols: C2) -> Self::Output; }

A matrix storage that can be reshaped in-place.

Associated Types

type Output: Storage<N, R2, C2>[src]

The reshaped storage type.

Loading content...

Required methods

fn reshape_generic(self, nrows: R2, ncols: C2) -> Self::Output[src]

Reshapes the storage into the output storage type.

Loading content...

Implementors

impl<N, C1, C2> ReshapableStorage<N, Dynamic, C1, Dynamic, C2> for VecStorage<N, Dynamic, C1> where
    N: Scalar,
    C1: Dim,
    C2: Dim
[src]

type Output = VecStorage<N, Dynamic, C2>

impl<N, C1, R2> ReshapableStorage<N, Dynamic, C1, R2, Dynamic> for VecStorage<N, Dynamic, C1> where
    N: Scalar,
    C1: Dim,
    R2: DimName
[src]

type Output = VecStorage<N, R2, Dynamic>

impl<N, R1, C1, R2, C2> ReshapableStorage<N, R1, C1, R2, C2> for ArrayStorage<N, R1, C1> where
    N: Scalar,
    R1: DimName,
    C1: DimName,
    R1::Value: Mul<C1::Value>,
    Prod<R1::Value, C1::Value>: ArrayLength<N>,
    R2: DimName,
    C2: DimName,
    R2::Value: Mul<C2::Value, Output = Prod<R1::Value, C1::Value>>,
    Prod<R2::Value, C2::Value>: ArrayLength<N>, 
[src]

type Output = ArrayStorage<N, R2, C2>

impl<N, R1, C2> ReshapableStorage<N, R1, Dynamic, Dynamic, C2> for VecStorage<N, R1, Dynamic> where
    N: Scalar,
    R1: DimName,
    C2: Dim
[src]

type Output = VecStorage<N, Dynamic, C2>

impl<N, R1, R2> ReshapableStorage<N, R1, Dynamic, R2, Dynamic> for VecStorage<N, R1, Dynamic> where
    N: Scalar,
    R1: DimName,
    R2: DimName
[src]

type Output = VecStorage<N, R2, Dynamic>

Loading content...