MooseX::Types::DateTime(3pm)

NAME
MooseX::Types::DateTime - DateTime related constraints and coercions for Moose

VERSION
version 0.14

SYNOPSIS
Export Example:

    use MooseX::Types::DateTime qw(TimeZone);

    has time_zone => (
        isa => TimeZone,
        is => "rw",
        coerce => 1,
    );

    Class->new( time_zone => "Africa/Timbuktu" );

DESCRIPTION
This module packages several Moose::Util::TypeConstraints with coercions, designed to work with the DateTime suite of objects.

Namespaced Example:

    use MooseX::Types::DateTime;

    has time_zone => (
        isa => 'DateTime::TimeZone',
        is => "rw",
        coerce => 1,
    );

    Class->new( time_zone => "Africa/Timbuktu" );

CONSTRAINTS

DateTime
    A class type for DateTime.

    from "Num"
        Uses "from_epoch" in DateTime. Floating values will be used for sub-second precision, see DateTime for details.

    from "HashRef"
        Calls "new" in DateTime with the hash entries as arguments.

Duration
    A class type for DateTime::Duration

    from "Num"
        Uses "new" in DateTime::Duration and passes the number as the "seconds" argument.

        Note that due to leap seconds, DST changes etc this may not do what you expect. For instance passing in 86400 is not always equivalent to one day, although there are that many seconds in a day. See "How Date Math is Done" in DateTime for more details.

    from "HashRef"
        Calls "new" in DateTime::Duration with the hash entries as arguments.

DateTime::Locale
    A class type for DateTime::Locale::root with the name DateTime::Locale.

    from "Str"
        The string is treated as a language tag (e.g. "en" or "he_IL") and given to "load" in DateTime::Locale.

    from Locale::Maktext
        The "Locale::Maketext/language_tag" attribute will be used with "load" in DateTime::Locale.

    DateTime::TimeZone
        A class type for DateTime::TimeZone.

        from "Str"
            Treated as a time zone name or offset. See "USAGE" in DateTime::TimeZone for more details on the allowed values.

            Delegates to "new" in DateTime::TimeZone with the string as the "name" argument.

SEE ALSO
MooseX::Types::DateTime::MoreCoercions

DateTime, DateTimeX::Easy

GIVING THANKS
If you found this module to be useful, please show your appreciation by adding a +1 in MetaCPAN <https://metacpan.org/dist/MooseX-Types-DateTime> and a star in GitHub <https://github.com/moose/MooseX-Types-DateTime>.

SUPPORT
Bugs may be submitted through the RT bug tracker <https://rt.cpan.org/Public/Dist/Display.html?Name=MooseX-Types-DateTime> (or bug-MooseX-Types-DateTime@rt.cpan.org <mailto:bug-MooseX-Types-DateTime@rt.cpan.org>).

There is also a mailing list available for users of this distribution, at <http://lists.perl.org/list/moose.html>.

There is also an irc channel available for users of this distribution, at "#moose" on "irc.perl.org" <irc://irc.perl.org/#moose>.

AUTHOR
יובל קוג'מן (Yuval Kogman) <nothingmuch@woobling.org>

CONTRIBUTORS

•   Karen Etheridge <ether@cpan.org>

•   Dagfinn Ilmari Mannsåker <ilmari@ilmari.org>

•   Florian Ragwitz <rafl@debian.org>

•   John Napiorkowski <jjnapiork@cpan.org>

•   Dave Rolsky <autarch@urth.org>

•   Shawn M Moore <sartak@gmail.com>

COPYRIGHT AND LICENCE
This software is copyright (c) 2008 by יובל קוג'מן (Yuval Kogman).

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