Struct nalgebra::base::dimension::Const [−][src]
pub struct Const<const R: usize>;
Trait Implementations
type Buffer = ArrayStorage<T, R, C>
type Buffer = ArrayStorage<T, R, C>
The type of buffer this allocator can instanciate.
type BufferUninit = ArrayStorage<MaybeUninit<T>, R, C>
type BufferUninit = ArrayStorage<MaybeUninit<T>, R, C>
The type of buffer with uninitialized components this allocator can instanciate.
Allocates a buffer with the given number of rows and columns without initializing its content.
Assumes a data buffer to be initialized. Read more
fn allocate_from_iterator<I: IntoIterator<Item = T>>(
nrows: Const<R>,
ncols: Const<C>,
iter: I
) -> Self::Buffer
fn allocate_from_iterator<I: IntoIterator<Item = T>>(
nrows: Const<R>,
ncols: Const<C>,
iter: I
) -> Self::Buffer
Allocates a buffer initialized with the content of the given iterator.
fn deserialize<Des>(deserializer: Des) -> Result<Self, Des::Error> where
Des: Deserializer<'de>,
fn deserialize<Des>(deserializer: Des) -> Result<Self, Des::Error> where
Des: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Gets the compile-time value of Self
. Returns None
if it is not known, i.e., if Self = Dynamic
. Read more
Gets the run-time value of self
. For type-level integers, this is the same as
Self::try_to_usize().unwrap()
. Read more
Builds an instance of Self
from a run-time value. Panics if Self
is a type-level
integer and dim != Self::try_to_usize().unwrap()
. Read more
impl<T, const R: usize, const C: usize> RawStorage<T, Const<R>, Const<C>> for ArrayStorage<T, R, C>
impl<T, const R: usize, const C: usize> RawStorage<T, Const<R>, Const<C>> for ArrayStorage<T, R, C>
The dimension of the matrix at run-time. Arr length of zero indicates the additive identity
element of any dimension. Must be equal to Self::dimension()
if it is not None
. Read more
The spacing between consecutive row elements and consecutive column elements. Read more
Indicates whether this data buffer stores its elements contiguously. Read more
Retrieves the data buffer as a contiguous slice. Read more
Compute the index corresponding to the irow-th row and icol-th column of this matrix. The index must be such that the following holds: Read more
Gets the address of the i-th matrix component without performing bound-checking. Read more
Gets the address of the i-th matrix component without performing bound-checking. Read more
Retrieves a reference to the i-th element without bound-checking. Read more
impl<T, const R: usize, const C: usize> RawStorageMut<T, Const<R>, Const<C>> for ArrayStorage<T, R, C>
impl<T, const R: usize, const C: usize> RawStorageMut<T, Const<R>, Const<C>> for ArrayStorage<T, R, C>
Retrieves the mutable data buffer as a contiguous slice. Read more
Gets the mutable address of the i-th matrix component without performing bound-checking. Read more
Gets the mutable address of the i-th matrix component without performing bound-checking. Read more
Retrieves a mutable reference to the i-th element without bound-checking. Read more
Retrieves a mutable reference to the element at (irow, icol)
without bound-checking. Read more
Swaps two elements using their linear index without bound-checking. Read more
impl<T: Scalar, CTo, const RFROM: usize, const CFROM: usize> Reallocator<T, Const<RFROM>, Const<CFROM>, Dynamic, CTo> for DefaultAllocator where
CTo: Dim,
impl<T: Scalar, CTo, const RFROM: usize, const CFROM: usize> Reallocator<T, Const<RFROM>, Const<CFROM>, Dynamic, CTo> for DefaultAllocator where
CTo: Dim,
unsafe fn reallocate_copy(
rto: Dynamic,
cto: CTo,
buf: ArrayStorage<T, RFROM, CFROM>
) -> VecStorage<MaybeUninit<T>, Dynamic, CTo>
unsafe fn reallocate_copy(
rto: Dynamic,
cto: CTo,
buf: ArrayStorage<T, RFROM, CFROM>
) -> VecStorage<MaybeUninit<T>, Dynamic, CTo>
Reallocates a buffer of shape (RTo, CTo)
, possibly reusing a previously allocated buffer
buf
. Data stored by buf
are linearly copied to the output: Read more
impl<T: Scalar, RTo, const RFROM: usize, const CFROM: usize> Reallocator<T, Const<RFROM>, Const<CFROM>, RTo, Dynamic> for DefaultAllocator where
RTo: DimName,
impl<T: Scalar, RTo, const RFROM: usize, const CFROM: usize> Reallocator<T, Const<RFROM>, Const<CFROM>, RTo, Dynamic> for DefaultAllocator where
RTo: DimName,
unsafe fn reallocate_copy(
rto: RTo,
cto: Dynamic,
buf: ArrayStorage<T, RFROM, CFROM>
) -> VecStorage<MaybeUninit<T>, RTo, Dynamic>
unsafe fn reallocate_copy(
rto: RTo,
cto: Dynamic,
buf: ArrayStorage<T, RFROM, CFROM>
) -> VecStorage<MaybeUninit<T>, RTo, Dynamic>
Reallocates a buffer of shape (RTo, CTo)
, possibly reusing a previously allocated buffer
buf
. Data stored by buf
are linearly copied to the output: Read more
unsafe fn reallocate_copy(
rto: Const<RTO>,
cto: Const<CTO>,
buf: <Self as Allocator<T, RFrom, CFrom>>::Buffer
) -> ArrayStorage<MaybeUninit<T>, RTO, CTO>
unsafe fn reallocate_copy(
rto: Const<RTO>,
cto: Const<CTO>,
buf: <Self as Allocator<T, RFrom, CFrom>>::Buffer
) -> ArrayStorage<MaybeUninit<T>, RTO, CTO>
Reallocates a buffer of shape (RTo, CTo)
, possibly reusing a previously allocated buffer
buf
. Data stored by buf
are linearly copied to the output: Read more
impl<T, const R1: usize, const C1: usize, const R2: usize, const C2: usize> ReshapableStorage<T, Const<R1>, Const<C1>, Const<R2>, Const<C2>> for ArrayStorage<T, R1, C1> where
T: Scalar,
Const<R1>: ToTypenum,
Const<C1>: ToTypenum,
Const<R2>: ToTypenum,
Const<C2>: ToTypenum,
<Const<R1> as ToTypenum>::Typenum: Mul<<Const<C1> as ToTypenum>::Typenum>,
<Const<R2> as ToTypenum>::Typenum: Mul<<Const<C2> as ToTypenum>::Typenum, Output = Prod<<Const<R1> as ToTypenum>::Typenum, <Const<C1> as ToTypenum>::Typenum>>,
impl<T, const R1: usize, const C1: usize, const R2: usize, const C2: usize> ReshapableStorage<T, Const<R1>, Const<C1>, Const<R2>, Const<C2>> for ArrayStorage<T, R1, C1> where
T: Scalar,
Const<R1>: ToTypenum,
Const<C1>: ToTypenum,
Const<R2>: ToTypenum,
Const<C2>: ToTypenum,
<Const<R1> as ToTypenum>::Typenum: Mul<<Const<C1> as ToTypenum>::Typenum>,
<Const<R2> as ToTypenum>::Typenum: Mul<<Const<C2> as ToTypenum>::Typenum, Output = Prod<<Const<R1> as ToTypenum>::Typenum, <Const<C1> as ToTypenum>::Typenum>>,
type Output = ArrayStorage<T, R2, C2>
type Output = ArrayStorage<T, R2, C2>
The reshaped storage type.
Reshapes the storage into the output storage type.
fn into_owned(self) -> Owned<T, Const<R>, Const<C>> where
DefaultAllocator: Allocator<T, Const<R>, Const<C>>,
fn into_owned(self) -> Owned<T, Const<R>, Const<C>> where
DefaultAllocator: Allocator<T, Const<R>, Const<C>>,
Builds a matrix data storage that does not contain any reference.
fn clone_owned(&self) -> Owned<T, Const<R>, Const<C>> where
DefaultAllocator: Allocator<T, Const<R>, Const<C>>,
fn clone_owned(&self) -> Owned<T, Const<R>, Const<C>> where
DefaultAllocator: Allocator<T, Const<R>, Const<C>>,
Clones this data storage to one that does not contain any reference.
Auto Trait Implementations
impl<const R: usize> RefUnwindSafe for Const<R>
impl<const R: usize> UnwindSafe for Const<R>
Blanket Implementations
Mutably borrows from an owned value. Read more
The inverse inclusion map: attempts to construct self
from the equivalent element of its
superset. Read more
Checks if self
is actually part of its subset T
(and can be converted to it).
Use with care! Same as self.to_subset
but without any property checks. Always succeeds.
The inclusion map: converts self
to the equivalent element of its superset.