pub struct MonthCode(pub TinyAsciiStr<4>);Expand description
Representation of a month in a year
Month codes typically look like M01, M02, etc, but can handle leap months
(M03L) in lunar calendars. Solar calendars will have codes between M01 and M12
potentially with an M13 for epagomenal months. Check the docs for a particular calendar
for details on what its month codes are.
Month codes are shared with Temporal, see Temporal proposal.
Tuple Fields§
§0: TinyAsciiStr<4>Implementations§
Source§impl MonthCode
 
impl MonthCode
Sourcepub fn get_normal_if_leap(self) -> Option<MonthCode>
 
pub fn get_normal_if_leap(self) -> Option<MonthCode>
Sourcepub fn parsed(self) -> Option<(u8, bool)>
 
pub fn parsed(self) -> Option<(u8, bool)>
Get the month number and whether or not it is leap from the month code
Sourcepub fn new_normal(number: u8) -> Option<MonthCode>
 
pub fn new_normal(number: u8) -> Option<MonthCode>
Construct a “normal” month code given a number (“Mxx”).
Returns an error for months greater than 99
Trait Implementations§
Source§impl AsULE for MonthCode
 
impl AsULE for MonthCode
Source§type ULE = TinyAsciiStr<4>
 
type ULE = TinyAsciiStr<4>
The ULE type corresponding to 
Self. Read moreSource§fn to_unaligned(self) -> TinyAsciiStr<4>
 
fn to_unaligned(self) -> TinyAsciiStr<4>
Source§fn from_unaligned(u: TinyAsciiStr<4>) -> MonthCode
 
fn from_unaligned(u: TinyAsciiStr<4>) -> MonthCode
Source§impl<'de> Deserialize<'de> for MonthCode
 
impl<'de> Deserialize<'de> for MonthCode
Source§fn deserialize<__D>(
    __deserializer: __D,
) -> Result<MonthCode, <__D as Deserializer<'de>>::Error>where
    __D: Deserializer<'de>,
 
fn deserialize<__D>(
    __deserializer: __D,
) -> Result<MonthCode, <__D as Deserializer<'de>>::Error>where
    __D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl Ord for MonthCode
 
impl Ord for MonthCode
Source§impl PartialOrd for MonthCode
 
impl PartialOrd for MonthCode
Source§impl<'a> ZeroMapKV<'a> for MonthCode
 
impl<'a> ZeroMapKV<'a> for MonthCode
impl Copy for MonthCode
impl Eq for MonthCode
impl StructuralPartialEq for MonthCode
Auto Trait Implementations§
impl Freeze for MonthCode
impl RefUnwindSafe for MonthCode
impl Send for MonthCode
impl Sync for MonthCode
impl Unpin for MonthCode
impl UnwindSafe for MonthCode
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
    T: ?Sized,
 
impl<T> BorrowMut<T> for Twhere
    T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
 
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
    T: Clone,
 
impl<T> CloneToUninit for Twhere
    T: Clone,
Source§impl<T> IntoEither for T
 
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
 
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts 
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
 
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts 
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more