The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

DateTime::Format::Builder::Parser::Dispatch - Dispatch parsers by group

SYNOPSIS

    package SampleDispatch;
    use DateTime::Format::Builder
    (
        parsers => {
            parse_datetime => [
                {
                    Dispatch => sub {
                        return 'fnerk';
                    }
                }
            ]
        },
        groups => {
            fnerk => [
                {
                    regex => qr/^(\d{4})(\d\d)(\d\d)$/,
                    params => [qw( year month day )],
                },
            ]
        }
    );

DESCRIPTION

Dispatch adds another parser type to Builder permitting dispatch of parsing according to group names.

SPECIFICATION

Dispatch has just one key: Dispatch. The value should be a reference to a subroutine that returns one of:

  • undef, meaning no groups could be found.

  • An empty list, meaning no groups could be found.

  • A single string, meaning: use this group

  • A list of strings, meaning: use these groups in this order.

Groups are specified much like the example in the SYNOPSIS. They follow the same format as when you specify them for methods.

SIDEEFFECTS

Your group parser can also be a Dispatch parser. Thus you could potentially end up with an infinitely recursive parser.

THANKS

See the main module's section.

SUPPORT

Support for this module is provided via the datetime@perl.org email list. See http://lists.perl.org/ for more details.

Alternatively, log them via the CPAN RT system via the web or email:

    http://perl.dellah.org/rt/dtbuilder
    bug-datetime-format-builder@rt.cpan.org

This makes it much easier for me to track things and thus means your problem is less likely to be neglected.

LICENCE AND COPYRIGHT

Copyright © Iain Truskett, 2003. All rights reserved.

This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself, either Perl version 5.000 or, at your option, any later version of Perl 5 you may have available.

The full text of the licences can be found in the Artistic and COPYING files included with this module, or in perlartistic and perlgpl as supplied with Perl 5.8.1 and later.

AUTHOR

Iain Truskett <spoon@cpan.org>

SEE ALSO

datetime@perl.org mailing list.

http://datetime.perl.org/

perl, DateTime, DateTime::Format::Builder