frequenz_microgrid_formula_engine/
error.rs1use crate::parser::Rule;
5use std::{error::Error, fmt::Display};
6
7#[derive(Debug)]
8pub struct FormulaError(pub String);
9
10impl Display for FormulaError {
11 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
12 write!(f, "{}", self.0)
13 }
14}
15
16impl Error for FormulaError {}
17
18impl From<pest::error::Error<Rule>> for FormulaError {
19 fn from(err: pest::error::Error<Rule>) -> Self {
20 FormulaError(format!("{err}"))
21 }
22}
23
24impl From<std::num::ParseFloatError> for FormulaError {
25 fn from(err: std::num::ParseFloatError) -> Self {
26 FormulaError(format!("{err}"))
27 }
28}