GSP
Quick Navigator

Search Site

Unix VPS
A - Starter
B - Basic
C - Preferred
D - Commercial
MPS - Dedicated
Previous VPSs
* Sign Up! *

Support
Contact Us
Online Help
Handbooks
Domain Status
Man Pages

FAQ
Virtual Servers
Pricing
Billing
Technical

Network
Facilities
Connectivity
Topology Map

Miscellaneous
Server Agreement
Year 2038
Credits
 

USA Flag

 

 

Man Pages
DateTime::Calendar::Pataphysical(3) User Contributed Perl Documentation DateTime::Calendar::Pataphysical(3)

DateTime::Calendar::Pataphysical - Dates in the Pataphysical calendar

version 0.07

  use DateTime::Calendar::Pataphysical;
  $dt = DateTime::Calendar::Pataphysical->new( year  => 1752,
                                               month => 10,
                                               day   => 4 );

DateTime::Calendar::Pataphysical is the implementation of the Pataphysical calendar. Each year in this calendar contains 13 months of 29 days. This regularity makes this a convenient alternative for the irregular Gregorian calendar.

This module is designed to be easy to use in combination with DateTime. Most of its methods correspond to a DateTime method of the same name.

    my $dt = DateTime::Calendar::Pataphysical-new(
        year  => $year_in_the_pataphysical_era,
        month => $pataphysical_month_number,
        day   => $pataphysical_day_number,
    );

This class method accepts parameters for each date and time component: "year", "month", "day". Additionally, it accepts a "locale" parameter.

The "rd_secs" parameter is also accepted. This parameter is only useful in conversions to other calendars; this calendar does not use its value.

    my $dt = DateTime::Calendar::Pataphysical->from_epoch( epoch => $epoch, ... );

This class method can be used to construct a new object from an epoch time instead of components. Just as with the new constructor, it accepts a "locale" parameter.

    my $dt = DateTime::Calendar::Pataphysical->now;

This class method is equivalent to calling from_epoch() with the value returned from Perl's time function.

    my $dt = DateTime::Calendar::Pataphysical->from_object( object => $object, ... );

This class method can be used to construct a new object from any object that implements the utc_rd_values method. All DateTime::Calendar modules must implement this method in order to provide cross-calendar compatibility. This method accepts a "locale" parameter.

The time part of $object is stored, and will only be used if the created object is converted to another calendar. Only the date part of $object is used to calculate the pataphysical date. This calculation is based on the local time and date of $object.

    my $dt = DateTime::Calendar::Pataphysical->last_day_of_month( ... );

This constructor takes the same arguments as can be given to the now method, except for "day". Additionally, both "year" and "month" are required.

    my $clone = $dt->clone;

This object method returns a replica of the given object.

Returns the year.

Returns the month of the year, from "1 .. 13".

Returns the name of the current month.

Returns the day of the month, from "1 .. 29".

Returns the day of the week as a number, from "1 .. 7", with 1 being Sunday and 7 being Saturday. Returns "undef" if the day is a "hunyadi".

Returns the name of the current day of the week.

Returns the day of the year.

     my $string = $dt->ymd( $optional_separator );

Each method returns the year, month, and day, in the order indicated by the method name. Years are zero-padded to three digits. Months and days are 0-padded to two digits.

By default, the values are separated by a dash ("-"), but this can be overridden by passing a value to the method.

Alias for ymd.

Equivalent to

    $dt->ymd('-') . 'EP'

This method returns a true or false indicating whether or not the DateTime object is in a leap year.

    my ( $week_year, $week_number ) = $dt->week;

Returns information about the calendar week which contains this DateTime object. The values returned by this method are also available separately through the week_year and week_number methods.

Returns the year of the week. In the Pataphysical calendar, this is equal to the year of the date, as all weeks fall in one year only.

Returns the week of the year, from "1 .. 53".

The 29th of each month falls outside of any week; "week_number" returns "undef" for these dates.

Returns the current UTC Rata Die days and seconds as a two element list. This exists primarily to allow other calendar modules to create objects based on the values provided by this object.

Returns the current UTC Rata Die days and seconds purely as seconds. This is useful when you need a single number to represent a date.

    my $string = $dt->strftime( $format, ... );

This method implements functionality similar to the strftime() method in C. However, if given multiple format strings, then it will return multiple elements, one for each format string.

See DateTime for a list of all possible format specifiers. This module implements all specifiers related to dates. There is one additional specifier: "%*" represents the feast of that date.

Returns the feast or vacuation of the given date.

Returns the type of feast or vacuation.

  '*' means Fête Suprème Première première
  '1' means Fête Suprème Première seconde
  '2' means Fête Suprème Seconde
  '3' means Fête Suprème Tierce
  '4' means Fête Suprème Quarte
  'v' means Vacuation

Returns true or false indicating whether the DateTime object represents an imaginary date.

This method can be used to change the local components of a date time, or its locale. This method accepts any parameter allowed by new.

    $dt->truncate( to => ... );

This method allows you to reset some of the local time components in the object to their "zero" values. The "to" parameter is used to specify which values to truncate, and it may be one of "year", "month", or "day".

    $dt->add_duration( $duration_object );

This method adds a "DateTime::Duration" to the current DateTime. See the DateTime::Duration documentation for more details.

    $dt->add( %arguments );

This method is syntactic sugar around the add_duration method. It simply creates a new DateTime::Duration object using the parameters given, and then calls the add_duration method.

    $dt->subtract_duration( $duration_object );

When given a DateTime::Duration object, this method simply calls "invert" on that object and passes that new duration to the add_duration method.

    $dt->subtract( %arguments );

Like add, this is syntactic sugar for the subtract_duration method.

    $dt->subtract_datetime( $datetime );

This method returns a new DateTime::Duration object representing the difference between the two dates.

    $cmp = DateTime->compare( $dt1, $dt2 );
    @dates = sort { DateTime->compare( $a, $b ) } @dates;

Compare two DateTime objects. The semantics are compatible with Perl's sort function; it returns -1 if "$a < $b", 0 if "$a == $b", and 1 if "$a > $b".

Of course, since DateTime objects overload comparison operators, you can just do this anyway:

    @dates = sort @dates;

  • Adding a week to a date is exactly equivalent to adding seven days in this module because of the way DateTime::Duration is implemented. The Hunyadis are not taken into account.
  • from_epoch and now probably only work on Unix.

Support for this module is provided via the datetime@perl.org email list. See <http://lists.perl.org/> for more details.

DateTime

datetime@perl.org mailing list

Eugene van der Pijll <pijll@gmx.net>

Maintained by Philippe Bruhat (BooK) since 2014.

Copyright (c) 2003, 2004 Eugene van der Pijll. All rights reserved.

This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.

2023-01-28 perl v5.40.2

Search for    or go to Top of page |  Section 3 |  Main Index

Powered by GSP Visit the GSP FreeBSD Man Page Interface.
Output converted with ManDoc.