pub enum DynRank {
Dyn(Box<[usize]>),
One(usize),
}Expand description
Array shape type with dynamic rank.
If the rank is 0 or 1, no heap allocation is necessary. The default value will have rank 1 and contain no elements.
Variants§
Implementations§
Trait Implementations§
Source§impl Ord for DynRank
impl Ord for DynRank
Source§impl PartialOrd for DynRank
impl PartialOrd for DynRank
Source§impl Permutation for DynRank
impl Permutation for DynRank
Source§impl Shape for DynRank
impl Shape for DynRank
Source§type Merge<S: Shape> = DynRank
type Merge<S: Shape> = DynRank
Merge each dimension pair, where constant size is preferred over dynamic.
The result has dynamic rank if at least one of the inputs has dynamic rank.
Source§type Layout<L: Layout> = Strided
type Layout<L: Layout> = Strided
Select layout
L for rank 0, or Strided for rank >0 or dynamic.Source§fn dim(&self, index: usize) -> usize
fn dim(&self, index: usize) -> usize
Returns the number of elements in the specified dimension. Read more
impl Eq for DynRank
Auto Trait Implementations§
impl Freeze for DynRank
impl RefUnwindSafe for DynRank
impl Send for DynRank
impl Sync for DynRank
impl Unpin for DynRank
impl UnwindSafe for DynRank
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> DistributionExt for Twhere
T: ?Sized,
impl<T> DistributionExt for Twhere
T: ?Sized,
Source§impl<T> IntoCloned<T> for T
impl<T> IntoCloned<T> for T
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§impl<T> Pointable for T
impl<T> Pointable for T
Source§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
Source§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
The inverse inclusion map: attempts to construct
self from the equivalent element of its
superset. Read moreSource§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
Checks if
self is actually part of its subset T (and can be converted to it).Source§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
Use with care! Same as
self.to_subset but without any property checks. Always succeeds.Source§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
The inclusion map: converts
self to the equivalent element of its superset.