1
use crate::convert::ToModel;
2
use crate::error::AetoliaResult;
3

            
4
impl ToModel for crate::parser::types::ICalendar<'_> {
5
    type Model = crate::model::object::ICalObject;
6

            
7
222
    fn to_model(&self) -> AetoliaResult<Self::Model> {
8
222
        let mut calendar = crate::model::object::ICalObject::new();
9
222

            
10
222
        calendar.properties.reserve(self.properties.len());
11
688
        for property in &self.properties {
12
466
            calendar.properties.push(property.to_model()?);
13
        }
14

            
15
222
        calendar.components.reserve(self.components.len());
16
506
        for component in &self.components {
17
284
            calendar.components.push(component.to_model()?);
18
        }
19

            
20
222
        Ok(calendar)
21
222
    }
22
}