use crate::entities::mix::structure::Mix;
use super::structure::GasDefinitions;
pub struct GasDefinitionsBuilder {
mixes: Vec<Mix>,
}
impl GasDefinitionsBuilder {
pub fn new() -> Self {
GasDefinitionsBuilder { mixes: Vec::new() }
}
pub fn add_mix(mut self, mix: Mix) -> Self {
self.mixes.push(mix);
self
}
pub fn build(self) -> Result<GasDefinitions, &'static str> {
Ok(GasDefinitions { mixes: self.mixes })
}
}
impl Default for GasDefinitionsBuilder {
fn default() -> Self {
Self::new()
}
}