Skip to main content

ical/component/
vavailability.rs

1//! # VAVAILABILITY
2//!
3//! The `VAVAILABILITY` component: the periods a calendar user is available in
4//! (RFC 7953 3.1).
5
6use crate::{
7    component::{IcalComponentKind, spec::IcalComponentSpec},
8    prop::IcalPropKind,
9};
10
11/// The `VAVAILABILITY` component marker.
12pub struct VAVAILABILITY;
13
14impl IcalComponentSpec for VAVAILABILITY {
15    const KIND: IcalComponentKind = IcalComponentKind::VAvailability;
16
17    fn allowed_children() -> &'static [IcalComponentKind] {
18        &[IcalComponentKind::Available]
19    }
20
21    fn required_props() -> &'static [IcalPropKind] {
22        &[IcalPropKind::DtStamp, IcalPropKind::Uid]
23    }
24}