1use thiserror::Error;
2
3#[derive(Error, Debug, PartialEq)]
4pub enum IncrementalError {
5 #[error("Dimension mismatch: expected {expected} features, got {actual}")]
6 DimensionMismatch { expected: usize, actual: usize },
7
8 #[error("Empty batch provided for incremental fitting")]
9 EmptyBatch,
10
11 #[error("Non-finite value (NaN or Infinity) detected in input data")]
12 NonFiniteInput,
13
14 #[error("Target batch dimension {target_len} does not match feature batch rows {feature_rows}")]
15 TargetDimensionMismatch {
16 target_len: usize,
17 feature_rows: usize,
18 },
19}