holidays-ru 0.1.2

A library for determining working days, weekends, and holidays in Russia.
Documentation
use crate::data::{YearFact, months};

/// Официальный производственный календарь на 2016 год.
///
/// На основе Постановления Правительства РФ от 24.09.2015 № 1017
/// "О переносе выходных дней в 2016 году".
pub(crate) const Y2016: YearFact = YearFact {
    holidays: months! {
        Jan: [1, 2, 3, 4, 5, 6, 7, 8],  // Новогодние каникулы (1–6,8) + Рождество Христово (7)
        Feb: [23],                         // День защитника Отечества
        Mar: [8],                          // Международный женский день
        May: [1, 9],                       // Праздник Весны и Труда (1), День Победы (9)
        Jun: [12],                         // День России
        Nov: [4],                          // День народного единства
    },

    extra_days_off: months! {
        Feb: [22],  // дополнительный выходной, компенсирован 20 февраля (сб)
        Mar: [7],   // перенос с 3 января (вс) → 7 марта (пн)
        May: [2, 3],  // перенос с 1 мая (вс) → 2 мая (пн), перенос с 2 января (сб) → 3 мая (вт)
        Jun: [13],  // перенос с 12 июня (вс) → 13 июня (пн)
    },

    working_days: months! {
        Feb: [20],  // рабочая суббота
    },

    short_days: months! {
        Feb: [20],  // рабочая суббота, короткий день перед 23 февраля
        Nov: [3],   // перед 4 ноября
    },

    transferred_days: months! {
        Jan: [2, 3],       // источники переносов
        Feb: [20, 22],     // рабочая суббота и цель переноса
        Mar: [7],          // цель переноса
        May: [1, 2, 3],    // источник и цели переносов
        Jun: [12, 13],     // источник и цель переноса
    },
};