#[derive(Clone, Debug, PartialEq, Serialize, Deserialize)]
pub struct WeekdayTimeRestriction {
#[serde(rename = "startDay", skip_serializing_if = "Option::is_none")]
pub start_day: Option<StartDay>,
#[serde(rename = "startHour", skip_serializing_if = "Option::is_none")]
pub start_hour: Option<i32>,
#[serde(rename = "startMin", skip_serializing_if = "Option::is_none")]
pub start_min: Option<i32>,
#[serde(rename = "endDay", skip_serializing_if = "Option::is_none")]
pub end_day: Option<EndDay>,
#[serde(rename = "endHour", skip_serializing_if = "Option::is_none")]
pub end_hour: Option<i32>,
#[serde(rename = "endMin", skip_serializing_if = "Option::is_none")]
pub end_min: Option<i32>,
}
impl WeekdayTimeRestriction {
pub fn new() -> WeekdayTimeRestriction {
WeekdayTimeRestriction {
start_day: None,
start_hour: None,
start_min: None,
end_day: None,
end_hour: None,
end_min: None,
}
}
}
#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
pub enum StartDay {
#[serde(rename = "monday")]
Monday,
#[serde(rename = "tuesday")]
Tuesday,
#[serde(rename = "wednesday")]
Wednesday,
#[serde(rename = "thursday")]
Thursday,
#[serde(rename = "friday")]
Friday,
#[serde(rename = "saturday")]
Saturday,
#[serde(rename = "sunday")]
Sunday,
}
#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
pub enum EndDay {
#[serde(rename = "monday")]
Monday,
#[serde(rename = "tuesday")]
Tuesday,
#[serde(rename = "wednesday")]
Wednesday,
#[serde(rename = "thursday")]
Thursday,
#[serde(rename = "friday")]
Friday,
#[serde(rename = "saturday")]
Saturday,
#[serde(rename = "sunday")]
Sunday,
}