macro_rules! months {
($($month:ident: [$($day:literal),* $(,)?]),* $(,)?) => {
const {
#[allow(unused_mut)]
let mut masks = [0u32; 13];
$(
masks[months!(@idx $month)] = $crate::data::days([$($day),*]);
)*
$crate::data::MonthMasks::new(masks)
}
};
(@idx Jan) => { 1 };
(@idx Feb) => { 2 };
(@idx Mar) => { 3 };
(@idx Apr) => { 4 };
(@idx May) => { 5 };
(@idx Jun) => { 6 };
(@idx Jul) => { 7 };
(@idx Aug) => { 8 };
(@idx Sep) => { 9 };
(@idx Oct) => { 10 };
(@idx Nov) => { 11 };
(@idx Dec) => { 12 };
}
pub(crate) use months;