DateTime::Format::Builder::Parser::Quick(3) User Contributed Perl Documentation DateTime::Format::Builder::Parser::Quick(3)

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 "use"d.

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, DateTime::Format::Builder

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.

  • Dave Rolsky <autarch@urth.org>
  • Iain Truskett <spoon@cpan.org>

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.

2024-09-01 perl v5.40.0