1pub type Result<T = ()> = core::result::Result<T, Error>;
8
9#[derive(Debug, thiserror::Error)]
10pub enum Error {
11 #[error("Dimension Error: {0}")]
12 DimensionalError(String),
13 #[error("Infinity Error")]
14 InfinityError,
15 #[error("Invalid Batch Size")]
16 InvalidBatchSize,
17 #[error("Invalid Input Shape")]
18 InvalidInputShape,
19 #[error("Invalid Output Shape")]
20 InvalidOutputShape,
21 #[error("Invalid Shape: {0}")]
22 InvalidShape(String),
23 #[error("Invalid Shape Mismatch: {0:?} != {1:?}")]
24 ShapeMismatch(Vec<usize>, Vec<usize>),
25 #[error("NaN Error")]
26 NaNError,
27 #[error(transparent)]
28 MathError(#[from] concision_math::MathematicalError),
29 #[error(transparent)]
30 PadError(#[from] crate::ops::pad::error::PadError),
31 #[error(transparent)]
32 ParamError(#[from] crate::params::error::ParamsError),
33 #[error("Training Failed")]
34 TrainingFailed(String),
35 #[error(transparent)]
36 ShapeError(#[from] ndarray::ShapeError),
37 #[cfg(feature = "anyhow")]
38 #[error(transparent)]
39 Other(#[from] anyhow::Error),
40 #[error("Unknown Error: {0}")]
41 Unknown(String),
42}