sklearn_rs/error.rs
1use thiserror::Error;
2
3#[derive(Error, Debug)]
4pub enum SklearnError {
5 #[error("形状不匹配: 期望 {expected}, 得到 {actual}")]
6 ShapeMismatch { expected: String, actual: String },
7
8 #[error("数据包含 NaN 或无穷大值")]
9 InvalidData,
10
11 #[error("拟合失败: {reason}")]
12 FitFailed { reason: String },
13
14 #[error("数值计算错误: {reason}")]
15 NumericalError { reason: String },
16}
17
18pub type Result<T> = std::result::Result<T, SklearnError>;