DateTime::Format::Builder::Parser::Quick - Use another formatter, simply
version 0.83
use DateTime::Format::Builder (
parsers => {
parse_datetime => [
{ Quick => 'DateTime::Format::HTTP' },
{ Quick => 'DateTime::Format::Mail' },
{ Quick => 'DateTime::Format::IBeat' },
]
}
);
# is the same as
use DateTime::Format::HTTP;
use DateTime::Format::Mail;
use DateTime::Format::IBeat;
use DateTime::Format::Builder (
parsers => {
parse_datetime => [
sub {
eval { DateTime::Format::HTTP->parse_datetime( $_[1] ) }
},
sub {
eval { DateTime::Format::Mail->parse_datetime( $_[1] ) }
},
sub {
eval { DateTime::Format::IBeat->parse_datetime( $_[1] ) }
},
]
}
);
(These two pieces of code can both be found in the test suite; one as
quick.t, the other as fall.t.)
Quick adds a parser that allows some shortcuts when writing fairly standard
and mundane calls to other formatting modules.
Quick has two keys, one optional.
The Quick keyword should have an argument of either an object or a class
name. If it's a class name then the class is used.
The method keyword is optional with a default of parse_datetime. It's
either name of the method to invoke on the object, or a reference to a piece
of code.
In any case, the resultant code ends up looking like:
my $rv = $Quick->$method($date);
datetime@perl.org mailing list.
http://datetime.perl.org/
perl, DateTime,
the DateTime::Format::Builder manpage
Bugs may be submitted at https://github.com/houseabsolute/DateTime-Format-Builder/issues.
I am also usually active on IRC as 'autarch' on irc://irc.perl.org.
The source code repository for DateTime-Format-Builder can be found at https://github.com/houseabsolute/DateTime-Format-Builder.
This software is Copyright (c) 2020 by Dave Rolsky.
This is free software, licensed under:
The Artistic License 2.0 (GPL Compatible)
The full text of the license can be found in the
LICENSE file included with this distribution.
|