ical/prop/action.rs
1//! # ACTION
2//!
3//! The `ACTION` property: what an alarm does when it fires: `AUDIO`, `DISPLAY`
4//! or `EMAIL` (RFC 5545 3.8.6.1).
5
6use crate::{
7 prop::{IcalPropKind, cardinality::IcalPropCardinality, spec::IcalPropSpec},
8 version::IcalVersion,
9};
10
11/// The `ACTION` property marker.
12pub struct ACTION;
13
14impl IcalPropSpec for ACTION {
15 const KIND: IcalPropKind = IcalPropKind::Action;
16
17 fn allowed_versions() -> &'static [IcalVersion] {
18 &[IcalVersion::V2_0]
19 }
20
21 fn cardinality(_version: IcalVersion) -> IcalPropCardinality {
22 IcalPropCardinality::AtMostOne
23 }
24}