GSP
Quick Navigator

Search Site

Unix VPS
A - Starter
B - Basic
C - Preferred
D - Commercial
MPS - Dedicated
Previous VPSs
* Sign Up! *

Support
Contact Us
Online Help
Handbooks
Domain Status
Man Pages

FAQ
Virtual Servers
Pricing
Billing
Technical

Network
Facilities
Connectivity
Topology Map

Miscellaneous
Server Agreement
Year 2038
Credits
 

USA Flag

 

 

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

DateTime::Format::Builder::Parser::generic - Useful routines

version 0.83

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:

  • on_match
  • on_fail
  • preprocess
  • postprocess

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.

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(...)

Instead we get to type:

    $self->valid_params(...);
    __PACKAGE__->valid_params(...);

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.

"datetime@perl.org" mailing list.

http://datetime.perl.org/

perl, DateTime, DateTime::Format::Builder, DateTime::Format::Builder::Parser.

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.

2020-08-09 perl v5.32.1

Search for    or go to Top of page |  Section 3 |  Main Index

Powered by GSP Visit the GSP FreeBSD Man Page Interface.
Output converted with ManDoc.