MooseX::Types::DateTime - L<DateTime> related constraints and coercions for Moose



NAME

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


VERSION

version 0.13


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 the Moose::Util::TypeConstraints manpage 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 DateTime/from_epoch. Floating values will be used for sub-second precision, see DateTime for details.

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

Duration
A class type for the DateTime::Duration manpage
from Num
Uses new in the DateTime::Duration manpage 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 DateTime/``How Date Math is Done'' for more details.

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

the DateTime::Locale manpage
A class type for the DateTime::Locale::root manpage with the name the DateTime::Locale manpage.
from Str
The string is treated as a language tag (e.g. en or he_IL) and given to load in the DateTime::Locale manpage.

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

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

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


SEE ALSO

the MooseX::Types::DateTime::MoreCoercions manpage

DateTime, the DateTimeX::Easy manpage


SUPPORT

Bugs may be submitted through the RT bug tracker (or 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 irc://irc.perl.org/#moose.


AUTHOR

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


CONTRIBUTORS


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.

 MooseX::Types::DateTime - L<DateTime> related constraints and coercions for Moose