some new features

This commit is contained in:
ilgazca
2025-07-30 18:53:50 +03:00
parent 8019bd3b7c
commit 079804a0fc
2118 changed files with 297840 additions and 502 deletions

View File

@ -0,0 +1,34 @@
# holidays
# --------
# A fast, efficient Python library for generating country, province and state
# specific sets of holidays on the fly. It aims to make determining whether a
# specific date is a holiday as fast and flexible as possible.
#
# Authors: Vacanza Team and individual contributors (see CONTRIBUTORS file)
# dr-prodigy <dr.prodigy.github@gmail.com> (c) 2017-2023
# ryanss <ryanssdev@icloud.com> (c) 2014-2017
# Website: https://github.com/vacanza/holidays
# License: MIT (see LICENSE file)
class _CustomCalendarType(type):
"""Helper class for simple calendar customization.
Renames child class public attributes keeping the original data under a new
name with a `CUSTOM_ATTR_POSTFIX` postfix.
Allows for better readability of customized lunisolar calendar dates.
"""
CUSTOM_ATTR_POSTFIX = "CUSTOM_CALENDAR"
def __new__(cls, name, bases, namespace):
for attr in (key for key in tuple(namespace.keys()) if key[0] != "_"):
namespace[f"{attr}_{_CustomCalendar.CUSTOM_ATTR_POSTFIX}"] = namespace[attr]
del namespace[attr]
return super().__new__(cls, name, bases, namespace)
class _CustomCalendar(metaclass=_CustomCalendarType):
pass