pub enum ShapeConstraintEvalError {
MissingInput {
input_idx: usize,
input_count: usize,
},
AxisOutOfBounds {
input_idx: usize,
axis: usize,
rank: usize,
},
Overflow,
Underflow,
DivisionByZero,
}Expand description
Typed reason that a symbolic shape constraint could not be evaluated.
§Examples
use tenferro_runtime::ShapeConstraintEvalError;
let cause = ShapeConstraintEvalError::MissingInput {
input_idx: 2,
input_count: 1,
};
assert_eq!(
cause.to_string(),
"shape expression references input 2, but only 1 inputs were provided"
);Variants§
MissingInput
An expression referenced an input shape that was not supplied.
AxisOutOfBounds
An expression referenced an axis outside the selected input’s rank.
Fields
Overflow
Checked dimension arithmetic overflowed usize.
Underflow
Checked dimension subtraction underflowed usize.
DivisionByZero
A floor-division divisor evaluated to zero.
Trait Implementations§
Source§impl Clone for ShapeConstraintEvalError
impl Clone for ShapeConstraintEvalError
Source§fn clone(&self) -> ShapeConstraintEvalError
fn clone(&self) -> ShapeConstraintEvalError
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · 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 ShapeConstraintEvalError
impl Debug for ShapeConstraintEvalError
Source§impl Display for ShapeConstraintEvalError
impl Display for ShapeConstraintEvalError
Source§impl Error for ShapeConstraintEvalError
impl Error for ShapeConstraintEvalError
1.30.0 · Source§fn source(&self) -> Option<&(dyn Error + 'static)>
fn source(&self) -> Option<&(dyn Error + 'static)>
Returns the lower-level source of this error, if any. Read more
1.0.0 · Source§fn description(&self) -> &str
fn description(&self) -> &str
👎Deprecated since 1.42.0:
use the Display impl or to_string()
Source§impl From<DimExprEvalError> for ShapeConstraintEvalError
impl From<DimExprEvalError> for ShapeConstraintEvalError
Source§fn from(error: DimExprEvalError) -> Self
fn from(error: DimExprEvalError) -> Self
Converts to this type from the input type.
Source§impl PartialEq for ShapeConstraintEvalError
impl PartialEq for ShapeConstraintEvalError
Source§fn eq(&self, other: &ShapeConstraintEvalError) -> bool
fn eq(&self, other: &ShapeConstraintEvalError) -> bool
Tests for
self and other values to be equal, and is used by ==.impl Eq for ShapeConstraintEvalError
impl StructuralPartialEq for ShapeConstraintEvalError
Auto Trait Implementations§
impl Freeze for ShapeConstraintEvalError
impl RefUnwindSafe for ShapeConstraintEvalError
impl Send for ShapeConstraintEvalError
impl Sync for ShapeConstraintEvalError
impl Unpin for ShapeConstraintEvalError
impl UnsafeUnpin for ShapeConstraintEvalError
impl UnwindSafe for ShapeConstraintEvalError
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<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.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