epoch-rs/src/weekday.rs

34 lines
743 B
Rust

use serde::{Deserialize, Serialize};
#[derive(Clone, Copy, Debug, Deserialize, Eq, PartialEq, Serialize)]
#[repr(u8)]
pub enum Weekday {
Thursday,
Friday,
Saturday,
Sunday,
Monday,
Tuesday,
Wednesday,
}
impl TryFrom<i64> for Weekday {
type Error = ParseWeekdayError;
fn try_from(value: i64) -> Result<Self, Self::Error> {
match value {
0 => Ok(Self::Thursday),
1 => Ok(Self::Friday),
2 => Ok(Self::Saturday),
3 => Ok(Self::Sunday),
4 => Ok(Self::Monday),
5 => Ok(Self::Tuesday),
6 => Ok(Self::Wednesday),
_ => Err(ParseWeekdayError),
}
}
}
#[derive(Debug)]
pub struct ParseWeekdayError;