use crate::entities::owner::structure::Owner;
use super::structure::Diver;
pub struct DiverBuilder {
owner: Option<Owner>,
}
impl DiverBuilder {
pub fn new() -> Self {
DiverBuilder { owner: None }
}
pub fn owner(mut self, owner: Owner) -> Self {
self.owner = Some(owner);
self
}
pub fn build(self) -> Result<Diver, &'static str> {
Ok(Diver { owner: self.owner })
}
}
impl Default for DiverBuilder {
fn default() -> Self {
Self::new()
}
}