holidays-ru 0.1.2

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

/// Официальный производственный календарь на 2018 год.
///
/// На основе Постановления Правительства РФ от 14.10.2017 № 1250
/// "О переносе выходных дней в 2018 году".
pub(crate) const Y2018: 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! {
        Mar: [9],   // перенос с 6 января (сб)
        Apr: [30],  // перенос с 7 января (вс)
        May: [2],   // перенос с 28 апреля (рабочая сб)
        Jun: [11],  // перенос с 9 июня (рабочая сб)
        Nov: [5],   // перенос с 4 ноября (вс)
        Dec: [31],  // перенос с 29 декабря (рабочая сб)
    },

    working_days: months! {
        Apr: [28],  // рабочая суббота
        Jun: [9],   // рабочая суббота
        Dec: [29],  // рабочая суббота
    },

    short_days: months! {
        Feb: [22],  // перед 23 февраля
        Mar: [7],   // перед 8 марта
        Apr: [28],  // рабочая суббота, короткий день перед 1 мая
        May: [8],   // перед 9 мая
        Jun: [9],   // рабочая суббота, короткий день перед 12 июня
        Nov: [2],   // перед 4 ноября
    },

    transferred_days: months! {
        Jan: [6, 7],     // источники переносов (праздники на выходных)
        Mar: [9],        // цель переноса
        Apr: [28, 30],   // рабочая суббота + цель переноса
        May: [2],        // цель переноса
        Jun: [9, 11],    // рабочая суббота + цель переноса
        Nov: [4, 5],     // источник (праздник на выходном) + цель переноса
        Dec: [29, 31],   // рабочая суббота + цель переноса
    },
};