Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

datetime::format::builder::parser::generic(3pm) [debian man page]

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

NAME
DateTime::Format::Builder::Parser::generic - Useful routines METHODS
Useful new Standard constructor. Returns a blessed hash; any arguments are placed in the hash. This is useful for storing information between methods. generic_parser This is a method provided solely for the benefit of "Parser" implementations. It semi-neatly abstracts a lot of the work involved. Basically, it takes parameters matching the assorted callbacks from the parser declarations and makes a coderef out of it all. Currently recognized callbacks are: o on_match o on_fail o preprocess o postprocess Methods for subclassing These are methods you should define when writing your own subclass. Note: these methods do not exist in this class. There is no point trying to call "$self->SUPER::do_match( ... )". do_match "do_match" is the first phase. Arguments are the date and @args. "self", "label", "args". Return value must be defined if you match successfully. post_match "post_match" is called after the appropriate callback out of "on_match"/"on_fail" is done. It's passed the date, the return value from "do_match" and the parsing hash. Its return value is used as the "post" argument to the "postprocess" callback, and as the second argument to "make". make "make" takes the original input, the return value from "post_match" and the parsing hash and should return a "DateTime" object or undefined. Delegations For use of "Parser", this module also delegates "valid_params" and "params". This is just convenience to save typing the following: DateTime::Format::Builder::Parser->valid_params( blah ) Instead we get to type: $self->valid_params( blah ); __PACKAGE__->valid_params( blah ); WRITING A SUBCLASS
Rather than attempt to explain how it all works, I think it's best if you take a look at Regex.pm and Strptime.pm as examples and work from there. THANKS
See DateTime::Format::Builder. 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 X 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, DateTime::Format::Builder::Parser. perl v5.10.1 2010-03-14 DateTime::Format::Builder::Parser::generic(3pm)

Check Out this Related Man Page

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

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})(dd)(dd)$/, 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: o "undef", meaning no groups could be found. o An empty list, meaning no groups could be found. o A single string, meaning: use this group o 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 X 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 perl v5.10.1 2010-03-14 DateTime::Format::Builder::Parser::Dispatch(3pm)
Man Page