use std::{error::Error, fmt};
#[derive(Debug)]
pub struct InvalidOperationError {
        pub message: String,
}
impl Error for InvalidOperationError {}
impl fmt::Display for InvalidOperationError {
    fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
        write!(f, "Invalid Operation Error: {}", self.message)
    }
}
#[derive(Debug)]
pub struct RequiredPropertyError {
        pub message: String,
}
impl Error for RequiredPropertyError {}
impl fmt::Display for RequiredPropertyError {
    fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
        write!(f, "Required Property Error: {}", self.message)
    }
}