quantrs2_anneal/solution_clustering/
error.rs1use thiserror::Error;
4
5#[derive(Error, Debug)]
7pub enum ClusteringError {
8 #[error("Invalid configuration: {0}")]
10 InvalidConfiguration(String),
11
12 #[error("Clustering algorithm error: {0}")]
14 AlgorithmError(String),
15
16 #[error("Data processing error: {0}")]
18 DataError(String),
19
20 #[error("Statistical analysis error: {0}")]
22 StatisticalError(String),
23
24 #[error("Visualization error: {0}")]
26 VisualizationError(String),
27
28 #[error("Convergence error: {0}")]
30 ConvergenceError(String),
31
32 #[error("Dimension mismatch: expected {expected}, got {actual}")]
34 DimensionMismatch { expected: usize, actual: usize },
35
36 #[error("Insufficient data: need at least {required}, got {actual}")]
38 InsufficientData { required: usize, actual: usize },
39}
40
41pub type ClusteringResult<T> = Result<T, ClusteringError>;