core_utils/errors/
circuit_error.rs1use crate::types::Label;
2
3#[derive(Debug, Clone, Eq, PartialEq)]
4pub enum CircuitError {
5 DanglingWire(Label),
6 CyclicDependency,
7 InvalidGate(Label),
8}
9
10impl std::fmt::Display for CircuitError {
11 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
12 match &self {
13 CircuitError::DanglingWire(i) => write!(f, "Dangling wire in circuit: {i}"),
14 CircuitError::InvalidGate(i) => write!(f, "Invalid gate used: {i}"),
15 CircuitError::CyclicDependency => write!(f, "Cyclic dependency in circuit"),
16 }
17 }
18}
19
20impl std::error::Error for CircuitError {}