Enum tract_hir::internal::tract_ndarray::Order [−][src]
#[non_exhaustive]
pub enum Order {
RowMajor,
ColumnMajor,
}
Expand description
Array order
Order refers to indexing order, or how a linear sequence is translated into a two-dimensional or multi-dimensional array.
RowMajor
means that the index along the row is the most rapidly changingColumnMajor
means that the index along the column is the most rapidly changing
Given a sequence like: 1, 2, 3, 4, 5, 6
If it is laid it out in a 2 x 3 matrix using row major ordering, it results in:
1 2 3
4 5 6
If it is laid using column major ordering, it results in:
1 3 5
2 4 6
It can be seen as filling in “rows first” or “columns first”.
Order
can be used both to refer to logical ordering as well as memory ordering or memory
layout. The orderings have common short names, also seen in other environments, where
row major is called “C” order (after the C programming language) and column major is called “F”
or “Fortran” order.
Variants (Non-exhaustive)
This enum is marked as non-exhaustive
Row major or “C” order
Column major or “F” order
Implementations
Return true if input is Order::RowMajor, false otherwise
Return true if input is Order::ColumnMajor, false otherwise
Return Order::RowMajor if the input is true, Order::ColumnMajor otherwise
Return Order::ColumnMajor if the input is true, Order::RowMajor otherwise
Trait Implementations
Auto Trait Implementations
impl RefUnwindSafe for Order
impl UnwindSafe for Order
Blanket Implementations
Mutably borrows from an owned value. Read more
pub fn into_any(self: Box<T, Global>) -> Box<dyn Any + 'static, Global>ⓘimpl<W> Write for Box<W, Global> where
W: Write + ?Sized, impl<R> Read for Box<R, Global> where
R: Read + ?Sized, impl<F, A> Future for Box<F, A> where
F: Future + Unpin + ?Sized,
A: Allocator + 'static, type Output = <F as Future>::Output;impl<I, A> Iterator for Box<I, A> where
I: Iterator + ?Sized,
A: Allocator, type Item = <I as Iterator>::Item;
pub fn into_any(self: Box<T, Global>) -> Box<dyn Any + 'static, Global>ⓘimpl<W> Write for Box<W, Global> where
W: Write + ?Sized, impl<R> Read for Box<R, Global> where
R: Read + ?Sized, impl<F, A> Future for Box<F, A> where
F: Future + Unpin + ?Sized,
A: Allocator + 'static, type Output = <F as Future>::Output;impl<I, A> Iterator for Box<I, A> where
I: Iterator + ?Sized,
A: Allocator, type Item = <I as Iterator>::Item;
impl<W> Write for Box<W, Global> where
W: Write + ?Sized, impl<R> Read for Box<R, Global> where
R: Read + ?Sized, impl<F, A> Future for Box<F, A> where
F: Future + Unpin + ?Sized,
A: Allocator + 'static, type Output = <F as Future>::Output;impl<I, A> Iterator for Box<I, A> where
I: Iterator + ?Sized,
A: Allocator, type Item = <I as Iterator>::Item;
Convert Box<dyn Trait>
(where Trait: Downcast
) to Box<dyn Any>
. Box<dyn Any>
can
then be further downcast
into Box<ConcreteType>
where ConcreteType
implements Trait
. Read more
Convert Rc<Trait>
(where Trait: Downcast
) to Rc<Any>
. Rc<Any>
can then be
further downcast
into Rc<ConcreteType>
where ConcreteType
implements Trait
. Read more
Convert &Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &Any
’s vtable from &Trait
’s. Read more
Convert &mut Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &mut Any
’s vtable from &mut Trait
’s. Read more