pub enum AprenderError {
Show 14 variants
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),
FormatError {
message: String,
},
UnsupportedVersion {
found: (u8, u8),
supported: (u8, u8),
},
ChecksumMismatch {
expected: u32,
actual: u32,
},
SignatureInvalid {
reason: String,
},
DecryptionFailed {
message: String,
},
ValidationError {
message: 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.
FormatError
Invalid or corrupt model format.
UnsupportedVersion
Unsupported format version.
ChecksumMismatch
Checksum verification failed.
SignatureInvalid
Signature verification failed.
DecryptionFailed
Decryption failed (wrong password or corrupt data).
ValidationError
Poka-yoke validation failed (APR-POKA-001 - Jidoka gate).
Implementations§
Source§impl AprenderError
impl AprenderError
Sourcepub fn dimension_mismatch(
context: &str,
expected: usize,
actual: usize,
) -> AprenderError
pub fn dimension_mismatch( context: &str, expected: usize, actual: usize, ) -> AprenderError
Create a dimension mismatch error with descriptive context
Sourcepub fn index_out_of_bounds(index: usize, len: usize) -> AprenderError
pub fn index_out_of_bounds(index: usize, len: usize) -> AprenderError
Create an index out of bounds error
Sourcepub fn empty_input(context: &str) -> AprenderError
pub fn empty_input(context: &str) -> AprenderError
Create an empty input error
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)>
1.0.0 · Source§fn description(&self) -> &str
fn description(&self) -> &str
use the Display impl or to_string()
Source§impl From<&str> for AprenderError
impl From<&str> for AprenderError
Source§fn from(msg: &str) -> AprenderError
fn from(msg: &str) -> AprenderError
Source§impl From<AprFormatError> for AprenderError
APR-2231 wrapper error seam: the sovereign apr-format leaf owns its own
AprFormatError; here aprender-core From-wraps it into AprenderError so
the leaf’s ?-results flow transparently into framework code and the leaf
stays free of any dependency on this error type. Variant set mirrors the
leaf’s AprFormatError; the leaf-only InvalidOffset / HeaderTooLarge
fold into FormatError (no information loss — the Display text is preserved).
impl From<AprFormatError> for AprenderError
APR-2231 wrapper error seam: the sovereign apr-format leaf owns its own
AprFormatError; here aprender-core From-wraps it into AprenderError so
the leaf’s ?-results flow transparently into framework code and the leaf
stays free of any dependency on this error type. Variant set mirrors the
leaf’s AprFormatError; the leaf-only InvalidOffset / HeaderTooLarge
fold into FormatError (no information loss — the Display text is preserved).
Source§fn from(err: AprFormatError) -> AprenderError
fn from(err: AprFormatError) -> AprenderError
Source§impl From<ContractError> for AprenderError
impl From<ContractError> for AprenderError
Source§fn from(err: ContractError) -> AprenderError
fn from(err: ContractError) -> AprenderError
Source§impl From<Error> for AprenderError
impl From<Error> for AprenderError
Source§fn from(err: Error) -> AprenderError
fn from(err: Error) -> AprenderError
Source§impl From<ImportError> for AprenderError
impl From<ImportError> for AprenderError
Source§fn from(err: ImportError) -> AprenderError
fn from(err: ImportError) -> AprenderError
Source§impl From<String> for AprenderError
impl From<String> for AprenderError
Source§fn from(msg: String) -> AprenderError
fn from(msg: String) -> AprenderError
Auto Trait Implementations§
impl !RefUnwindSafe for AprenderError
impl !UnwindSafe for AprenderError
impl Freeze for AprenderError
impl Send for AprenderError
impl Sync for AprenderError
impl Unpin for AprenderError
impl UnsafeUnpin 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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
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> ⓘ
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> ⓘ
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