Date-Holidays-TW
view release on metacpan or search on metacpan
lib/Date/Holidays/TW.pm view on Meta::CPAN
sub __is_tw_lunar_holiday {
my ($dt) = @_;
my $lunar_date = DateTime::Calendar::Chinese->from_object(object => $dt);
return undef if $lunar_date->leap_month;
my $lunar_mmdd = sprintf('%02d%02d', $lunar_date->month, $lunar_date->day);
return $FOLK_LUNAR{$lunar_mmdd};
}
sub __is_qingming {
# Thanks Wei-Hon Chen for the formula.
my $dt = $_[0];
return undef unless $dt->month == 4 && 3 < $dt->day && $dt->day < 6;
my $year = $dt->year;
die "Unsupported" if $year < 1901 || 2100 < $year;
my $Y = ($year % 100);
my $C = (1901 <= $year && $year < 2001) ? 5.59 : 4.81;
my $n = int($Y * 0.2422 + 4.81) - int($Y / 4);
return $dt->day == $n ? 'æ°ææå¢ç¯' : undef;
}
( run in 0.302 second using v1.01-cache-2.11-cpan-3cd7ad12f66 )