use serde::{Deserialize, Serialize};
#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct MarketRules {
pub voll: f64,
#[serde(default, skip_serializing_if = "Vec::is_empty")]
pub reserve_products: Vec<crate::market::reserve::ReserveProduct>,
#[serde(default, skip_serializing_if = "Vec::is_empty")]
pub system_reserve_requirements: Vec<crate::market::reserve::SystemReserveRequirement>,
}
impl Default for MarketRules {
fn default() -> Self {
Self {
voll: 9000.0,
reserve_products: Vec::new(),
system_reserve_requirements: Vec::new(),
}
}
}
#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct ReserveZone {
pub name: String,
#[serde(default, skip_serializing_if = "Vec::is_empty")]
pub zonal_requirements: Vec<crate::market::reserve::ZonalReserveRequirement>,
}