31 lines
925 B
Rust
31 lines
925 B
Rust
use thiserror::Error;
|
|
|
|
#[derive(Error, Debug, Clone, PartialEq)]
|
|
pub enum PolygraphError {
|
|
#[error("Invalid node configuration: {message}")]
|
|
InvalidNodeConfiguration { message: String },
|
|
|
|
#[error("Insufficient memory: required {required_mb}MB, available {available_mb}MB")]
|
|
InsufficientMemory { required_mb: u64, available_mb: u64 },
|
|
|
|
#[error("Invalid graph structure: {message}")]
|
|
InvalidGraphStructure { message: String },
|
|
|
|
#[error("Fusion error: {message}")]
|
|
FusionError { message: String },
|
|
|
|
#[error("Cache error: {message}")]
|
|
CacheError { message: String },
|
|
|
|
#[error("Optimization error: {message}")]
|
|
OptimizationError { message: String },
|
|
|
|
#[error("Compilation error: {message}")]
|
|
CompilationError { message: String },
|
|
|
|
#[error("Runtime error: {message}")]
|
|
RuntimeError { message: String },
|
|
}
|
|
|
|
pub type Result<T> = std::result::Result<T, PolygraphError>;
|