ical/tree/value/duration.rs
1//! # Duration value codec (RFC 5545 3.3.6)
2//!
3//! [`Codec`] for the duration value. A single scalar value.
4
5use crate::{
6 tree::{
7 codec::{Codec, encode::scalar_node, mode::Escaper},
8 value::node::IcalValueNode,
9 },
10 value::duration::IcalDuration,
11};
12
13impl<'v> Codec<'v> for IcalDuration<'v> {
14 fn decode(node: &'v IcalValueNode<'_>) -> Self {
15 IcalDuration(node.decode())
16 }
17
18 fn encode(&self, escaper: Escaper) -> IcalValueNode<'static> {
19 scalar_node(&self.0, escaper)
20 }
21}