use thiserror::Error;
#[derive(Debug, Clone, PartialEq, Eq, Error)]
pub enum PropertyError {
#[error("undefined property: {context}")]
Undefined { context: String },
#[error("out of domain: {context}")]
OutOfDomain { context: String },
#[error("invalid state: {context}")]
InvalidState { context: String },
#[error("calculation error: {context}")]
Calculation { context: String },
}