Skip to main content

ical/component/
vjournal.rs

1//! # VJOURNAL
2//!
3//! The `VJOURNAL` component: a journal entry attached to a date (RFC 5545
4//! 3.6.3).
5
6use crate::{
7    component::{IcalComponentKind, spec::IcalComponentSpec},
8    prop::IcalPropKind,
9};
10
11/// The `VJOURNAL` component marker.
12pub struct VJOURNAL;
13
14impl IcalComponentSpec for VJOURNAL {
15    const KIND: IcalComponentKind = IcalComponentKind::VJournal;
16
17    fn allowed_children() -> &'static [IcalComponentKind] {
18        &[IcalComponentKind::Participant]
19    }
20
21    fn required_props() -> &'static [IcalPropKind] {
22        &[IcalPropKind::Uid, IcalPropKind::DtStamp]
23    }
24}