pub struct ShapeGuard {
pub dim_a: usize,
pub dim_b: usize,
pub ordering: Ordering,
}Expand description
A recorded dimension comparison made during AD graph construction.
§Examples
use std::cmp::Ordering;
use tenferro_ops::ShapeGuard;
let guard = ShapeGuard {
dim_a: 5,
dim_b: 3,
ordering: Ordering::Greater,
};
assert_eq!(guard.ordering, Ordering::Greater);Fields§
§dim_a: usizeFirst dimension value, such as m.
dim_b: usizeSecond dimension value, such as n.
ordering: OrderingThe observed ordering dim_a.cmp(&dim_b).
Trait Implementations§
Source§impl Clone for ShapeGuard
impl Clone for ShapeGuard
Source§fn clone(&self) -> ShapeGuard
fn clone(&self) -> ShapeGuard
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for ShapeGuard
impl Debug for ShapeGuard
Source§impl PartialEq for ShapeGuard
impl PartialEq for ShapeGuard
impl Eq for ShapeGuard
impl StructuralPartialEq for ShapeGuard
Auto Trait Implementations§
impl Freeze for ShapeGuard
impl RefUnwindSafe for ShapeGuard
impl Send for ShapeGuard
impl Sync for ShapeGuard
impl Unpin for ShapeGuard
impl UnsafeUnpin for ShapeGuard
impl UnwindSafe for ShapeGuard
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,
§impl<T> DistributionExt for Twhere
T: ?Sized,
impl<T> DistributionExt for Twhere
T: ?Sized,
fn rand<T>(&self, rng: &mut (impl Rng + ?Sized)) -> Twhere
Self: Distribution<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 more