use std::fmt;
use serde::{Serialize, Deserialize};
#[derive(Serialize, Deserialize)]
pub struct IADBSeries {
pub name: String,
pub description: String,
pub data: Vec<IADBDataPoint>,
}
impl fmt::Display for IADBSeries {
fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
write!(f, "IADB Series: {} ({})\n", self.name, self.description)?;
for item in self.data.iter() {
write!(f, "{}\n", item.to_string())?;
}
Ok(())
}
}
#[derive(Serialize, Deserialize)]
pub struct IADBDataPoint {
pub date: String,
pub value: f64,
}
impl fmt::Display for IADBDataPoint {
fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
write!(f, "IADB Data Point ({}): {}", self.date, self.value)
}
}