pub enum AprenderError {
DimensionMismatch {
expected: String,
actual: String,
},
SingularMatrix {
det: f64,
},
ConvergenceFailure {
iterations: usize,
final_loss: f64,
},
InvalidHyperparameter {
param: String,
value: String,
constraint: String,
},
BackendUnavailable {
backend: String,
},
Io(Error),
Serialization(String),
Other(String),
}Expand description
Main error type for Aprender operations.
Provides detailed context about failures including dimension mismatches, singular matrices, convergence issues, and invalid hyperparameters.
§Examples
use aprender::error::AprenderError;
let err = AprenderError::DimensionMismatch {
expected: "100x10".to_string(),
actual: "100x5".to_string(),
};
assert!(err.to_string().contains("dimension mismatch"));Variants§
DimensionMismatch
Matrix/vector dimensions don’t match for the operation.
SingularMatrix
Matrix is singular (non-invertible).
ConvergenceFailure
Optimization failed to converge within iteration limit.
InvalidHyperparameter
Invalid hyperparameter value provided.
Fields
Requested compute backend is not available.
Io(Error)
I/O error (file not found, permission denied, etc.).
Serialization(String)
Serialization/deserialization error.
Other(String)
Generic error with string message.
Trait Implementations§
Source§impl Debug for AprenderError
impl Debug for AprenderError
Source§impl Display for AprenderError
impl Display for AprenderError
Source§impl Error for AprenderError
impl Error for AprenderError
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<&str> for AprenderError
impl From<&str> for AprenderError
Source§impl From<Error> for AprenderError
impl From<Error> for AprenderError
Source§impl From<String> for AprenderError
impl From<String> for AprenderError
Source§impl PartialEq<&str> for AprenderError
impl PartialEq<&str> for AprenderError
Source§impl PartialEq<AprenderError> for &str
impl PartialEq<AprenderError> for &str
Auto Trait Implementations§
impl Freeze for AprenderError
impl !RefUnwindSafe for AprenderError
impl Send for AprenderError
impl Sync for AprenderError
impl Unpin for AprenderError
impl !UnwindSafe for AprenderError
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> 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.