holidays-ru 0.1.2

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

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

    // Доп. выходные: 8 янв (с 7 янв), 30 апр (с 28 апр), 11 июн (с 9 июн),
    // 5 ноя (с 4 ноя), 31 дек (с 29 дек)
    extra_days_off: months! {
        Jan: [8],
        Apr: [30],
        Jun: [11],
        Nov: [5],
        Dec: [31],
    },

    // Рабочие субботы: 28 апр, 9 июн, 29 дек (Постановление № 661)
    working_days: months! {
        Apr: [28],
        Jun: [9],
        Dec: [29],
    },

    // Сокращённые дни: 22 фев, 7 мар, 28 апр, 8 мая, 9 июн, 29 дек
    short_days: months! {
        Feb: [22],  // перед 23 фев
        Mar: [7],   // перед 8 мар
        Apr: [28],  // рабочая суббота, перед 1 мая
        May: [8],   // перед 9 мая
        Jun: [9],   // рабочая суббота, перед 12 июн
        Dec: [29],  // рабочая суббота, перед 1 янв 2008
    },

    // Источники и цели переносов
    transferred_days: months! {
        Jan: [7, 8],       // источник: 7 янв (вс) + цель 8 янв
        Apr: [28, 30],     // рабочая сб + цель
        Jun: [9, 11],      // рабочая сб + цель
        Nov: [4, 5],       // источник: 4 ноя (вс) + цель
        Dec: [29, 31],     // рабочая сб + цель
    },
};