1pub(crate) type Result<T = ()> = core::result::Result<T, SurfaceError>;
8
9#[derive(Debug, thiserror::Error)]
10pub enum SurfaceError {
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("Parameter Error")]
28 ParameterError,
29 #[error("Training Failed")]
30 TrainingFailed(String),
31 #[error(transparent)]
32 CoreError(#[from] crate::core::Error),
33 #[error(transparent)]
34 MusicError(#[from] crate::nrt::MusicError),
35 #[error(transparent)]
36 ShapeError(#[from] ndarray::ShapeError),
37 #[error(transparent)]
38 Other(#[from] anyhow::Error),
39 #[error("Unknown Error: {0}")]
40 Unknown(String),
41}