Files
GseTDDUebungKCLR/database/perl/vendor/lib/Time/Moment/Adjusters.pod
Riley Schneider b732d8d4b5 Initial Commit
2025-12-03 16:38:10 +01:00

144 lines
3.6 KiB
Plaintext
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

=encoding utf-8
=head1 NAME
Time::Moment::Adjusters - Adjusters for Time::Moment
=head1 SYNOPSIS
$adjuster = NextDayOfWeek($day);
$adjuster = NextOrSameDayOfWeek($day);
$adjuster = PreviousDayOfWeek($day);
$adjuster = PreviousOrSameDayOfWeek($day);
$adjuster = FirstDayOfWeekInMonth($day);
$adjuster = LastDayOfWeekInMonth($day);
$adjuster = NthDayOfWeekInMonth($ordinal, $day);
$adjuster = WesternEasterSunday();
$adjuster = OrthodoxEasterSunday();
$adjuster = NearestMinuteInterval($interval);
=head1 DESCRIPTION
C<Time::Moment::Adjusters> provides adjusters. An adjuster is a CODE reference
invoked with an instance of Time::Moment and is expected to return an instance
of Time::Moment.
=head1 FUNCTIONS
=head2 NextDayOfWeek
$adjuster = NextDayOfWeek($day);
The C<$adjuster> adjusts the date to the next occurrence of the given I<day>
of the week [1=Monday, 7=Sunday] that is after the date.
=head2 NextOrSameDayOfWeek
$adjuster = NextOrSameDayOfWeek($day);
The C<$adjuster> adjusts the date to the next occurrence of the given I<day>
of the week [1=Monday, 7=Sunday]. If the date already falls on the given
I<day> of the week it's unaltered.
=head2 PreviousDayOfWeek
$adjuster = PreviousDayOfWeek($day);
The C<$adjuster> adjusts the date to the previous occurrence of the given
I<day> of the week [1=Monday, 7=Sunday] that is before the date.
=head2 PreviousOrSameDayOfWeek
$adjuster = PreviousOrSameDayOfWeek($day);
The C<$adjuster> adjusts the date to the previous occurrence of the given
I<day> of the week [1=Monday, 7=Sunday]. If the date already falls on the
given I<day> of the week it's unaltered.
=head2 FirstDayOfWeekInMonth
$adjuster = FirstDayOfWeekInMonth($day);
The C<$adjuster> adjusts the date to the first occurrence of the given
I<day> of the week [1=Monday, 7=Sunday] within the month.
=head2 LastDayOfWeekInMonth
$adjuster = LastDayOfWeekInMonth($day);
The C<$adjuster> adjusts the date to the last occurrence of the given
I<day> of the week [1=Monday, 7=Sunday] within the month.
=head2 NthDayOfWeekInMonth
$adjuster = NthDayOfWeekInMonth($ordinal, $day);
The C<$adjuster> adjusts the date to the given I<ordinal> I<day> of
the week within the month.
B<Parameters:>
=over 4
=item ordinal
The I<ordinal> of the week within the month [-4, -1] [1, 4].
=item day
The I<day> of the week [1=Monday, 7=Sunday].
=back
=head2 WesternEasterSunday
$adjuster = WesternEasterSunday();
The C<$adjuster> adjusts the date to the Western Easter Sunday. The Western
computus is based on the Gregorian calendar.
=head2 OrthodoxEasterSunday
$adjuster = OrthodoxEasterSunday();
The C<$adjuster> adjusts the date to the Orthodox Easter Sunday. The Orthodox
computus is based on the Julian calendar with the Julian date converted to
the equivalent Gregorian date.
=head2 NearestMinuteInterval
$adjuster = NearestMinuteInterval($interval);
The C<$adjuster> adjusts the time of day to the nearest minute of the given
minute I<interval> [1, 1440].
Given an minute interval of C<30>:
T10:14:59 => T10:00:00
T10:15:00 => T10:30:00
T10:29:59 => T10:30:00
T23:55:00 => T00:00:00 (midnight of the following day)
=head1 EXPORTS
None by default. All functions can be exported using the C<:all> tag or
individually.
=head1 AUTHOR
Christian Hansen C<chansen@cpan.org>
=head1 COPYRIGHT
Copyright 2015-2017 by Christian Hansen.
This is free software; you can redistribute it and/or modify it under
the same terms as the Perl 5 programming language system itself.