NAME
Date::Holidays::BY - Determine Belorussian official holidays and business days.
SYNOPSIS
use Date::Holidays::BY qw( is_holiday holidays is_business_day );
my ( $year, $month, $day ) = ( localtime )[ 5, 4, 3 ];
$year += 1900;
$month += 1;
if ( my $holidayname = is_holiday( $year, $month, $day ) ) {
print "Today is a holiday: $holidayname\n";
}
my $ref = holidays( $year );
while ( my ( $md, $name ) = each %$ref ) {
print "On $md there is a holiday named $name\n";
}
if ( is_business_day( 2012, 03, 11 ) ) {
print "2012-03-11 is business day on weekend\n";
}
if ( is_short_business_day( 2015, 04, 30 ) ) {
print "2015-04-30 is short business day\n";
}
$Date::Holidays::BY::strict=1;
# here we die because time outside from $HOLIDAYS_VALID_SINCE to $INACCURATE_TIMES_SINCE
holidays( 9001 );
$Date::Holidays::BY::HOLIDAYS_VALID_SINCE, $Date::Holidays::BY::INACCURATE_TIMES_SINCE
HOLIDAYS_VALID_SINCE before this year package doesn't matter INACCURATE_TIMES_SINCE after this year dates of holidays and working day shift are not accurate, but you can most likely be sure of historical holidays
$Date::Holidays::BY::strict
Allows you to return an error if the requested date is outside the determined times. Default is 0.
is_holiday( $year, $month, $day )
Determine whether this date is a BY holiday. Returns holiday name or undef.
is_by_holiday( $year, $month, $day )
Alias for is_holiday().
holidays( $year )
Returns hash ref of all BY holidays in the year.
is_business_day( $year, $month, $day )
Returns true if date is a business day in BY taking holidays and weekends into account.
is_short_business_day( $year, $month, $day )
Returns true if date is a shortened business day in BY.
LICENSE
This software is copyright (c) 2020 by Vladimir Varlamov.
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.
Terms of the Perl programming language system itself
a) the GNU General Public License as published by the Free Software Foundation; either version 1, or (at your option) any later version, or b) the "Artistic License"
AUTHOR
Vladimir Varlamov, <bes.internal@gmail.com>