zugferd_code_lists/zugferd_2_3_3/
date.rs1#![allow(non_camel_case_types)]
2
3#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
4#[derive(Debug, PartialEq, Eq, PartialOrd, Ord, Clone, Copy, Hash)]
5pub enum Date {
6 Ccyymmdd,
10 Ccyymmddhhmmzhhmm,
14}
15
16impl crate::Code for Date {
17 fn code(self) -> &'static str {
18 match self {
19 Date::Ccyymmdd => "102",
20 Date::Ccyymmddhhmmzhhmm => "205",
21 }
22 }
23}
24
25impl crate::Description for Date {
26 fn description(self) -> &'static str {
27 match self {
28 Date::Ccyymmdd => "CCYYMMDD",
29 Date::Ccyymmddhhmmzhhmm => "CCYYMMDDHHMMZHHMM",
30 }
31 }
32}
33
34impl crate::FromCode for Date {
35 fn from_code(code: &str) -> Option<Self>
36 where
37 Self: Sized,
38 {
39 match code {
40 "102" => Some(Date::Ccyymmdd),
41 "205" => Some(Date::Ccyymmddhhmmzhhmm),
42 _ => None,
43 }
44 }
45}