use thiserror::Error;
mod config_error;
pub use config_error::ConfigError;
mod edge_error;
pub use edge_error::EdgeError;
mod node_error;
pub use node_error::NodeError;
pub use crate::shared::style_class::StyleClassError;
#[derive(Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash, Error)]
#[cfg_attr(feature = "serde", derive(serde::Deserialize, serde::Serialize))]
pub enum Error {
#[error("Node error: {0}")]
Node(#[from] NodeError),
#[error("Edge error: {0}")]
Edge(#[from] EdgeError),
#[error("Configuration error: {0}")]
Config(#[from] ConfigError),
#[error("Style class error: {0}")]
StyleClass(#[from] StyleClassError),
}