Provided by: libmoosex-types-datetime-morecoercions-perl_0.15-3_all bug

NAME

       MooseX::Types::DateTime::MoreCoercions - Extensions to MooseX::Types::DateTime

VERSION

       version 0.15

SYNOPSIS

           package MyApp::MyClass;

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

           has created => (
               isa => DateTime,
               is => "rw",
               coerce => 1,
           );

           my $instance = MyApp::MyClass->new(created=>'January 1, 1980');
           print $instance->created->year; # is 1980

           ## Coercions from the base type continue to work as normal.
           my $instance = MyApp::MyClass->new(created=>{year=>2000,month=>1,day=>10});

       Please see the test case for more example usage.

DESCRIPTION

       This module builds on MooseX::Types::DateTime to add additional custom types and
       coercions.  Since it builds on an existing type, all coercions and constraints are
       inherited.

SUBTYPES

       This module defines the following additional subtypes.

   DateTime
       Subtype of "DateTime" in MooseX::Types::DateTime.  Adds an additional coercion from
       strings.

       Uses DateTimeX::Easy to try and convert strings, like "yesterday" into a valid DateTime
       object.  Please note that due to ambiguity with how different systems might localize their
       timezone, string parsing may not always return the most expected value.  IN general we try
       to localize to UTC whenever possible.  Feedback welcomed!

   Duration
       Subtype of "Duration" in MooseX::Types::DateTime that coerces from a string.  We use the
       module Time::Duration::Parse to attempt this.

CAVEATS

       Firstly, this module uses DateTimeX::Easy which is way more DWIM than any sane person
       would desire. DateTimeX::Easy works by falling back until something makes sense, this is
       variable. Furthermore, all the modules that DateTimeX::Easy *can* use aren't required for
       "proper" function of DateTimeX::Easy. What does this mean? Simple, your mileage may vary
       in your coercions because DateTimeX::Easy is installation specific.

SEE ALSO

       •   MooseX::Types::DateTime Replacement for this module -- coercions with less voodoo

       •   DateTimeX::Easy Backend of this module

       •   Time::Duration::Parse Duration parsing backend for this module

AUTHOR

       John Napiorkowski <jjn1056 at yahoo.com>

       Broken into a separate package from MooseX::Types::DateTime by Evan Carroll.

       Forked from MooseX::Types::DateTimeX and ported back to use MooseX::Types::DateTime by
       Dagfinn Ilmari Mannsaaker <ilmari@ilmari.org>.

AUTHORS

       •   John Napiorkowski <jjn1056@yahoo.com>

       •   Dagfinn Ilmari Mannsaaker <ilmari@ilmari.org>

CONTRIBUTORS

       •   Karen Etheridge <ether@cpan.org>

       •   Evan Carroll <me+cpan@evancarroll.com>

       •   gregor herrmann <gregoa@debian.org>

COPYRIGHT AND LICENSE

       This software is copyright (c) 2008 by John Napiorkowski.

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