1#[derive(Debug, PartialEq, Clone)]
2pub enum Day {
3 Monday,
4 Tuesday,
5 Wednesday,
6 Thursday,
7 Friday,
8 Saturday,
9 Sunday,
10}
11
12#[derive(Debug, PartialEq, Clone)]
13pub enum Month {
14 January,
15 February,
16 March,
17 April,
18 May,
19 June,
20 July,
21 August,
22 September,
23 October,
24 November,
25 December,
26}
27
28#[derive(Debug, PartialEq, Clone)]
29pub struct Zone {
30 pub sign: bool,
31 pub hour_offset: u8,
32 pub minute_offset: u8,
33}
34
35#[derive(Debug, PartialEq, Clone)]
36pub struct Time {
37 pub hour: u8,
38 pub minute: u8,
39 pub second: u8,
40}
41
42#[derive(Debug, PartialEq, Clone)]
43pub struct TimeWithZone {
44 pub time: Time,
45 pub zone: Zone,
46}
47
48#[derive(Debug, PartialEq, Clone)]
49pub struct Date {
50 pub day: u8,
51 pub month: Month,
52 pub year: usize,
53}
54
55#[derive(Debug, PartialEq, Clone)]
56pub struct DateTime {
57 pub day_name: Option<Day>,
58 pub date: Date,
59 pub time: TimeWithZone,
60}