use strict;
=pod
This example shows a simple fall through parser that tries
a few of the other formatting modules, _then_ fails.
=cut
package DateTime::Format::Fall;
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] ) } },
]});
package main;
for ( '@d19.07.03 @704', '20030719T155345', 'gibberish' )
{
print DateTime::Format::Fall->parse_datetime($_)->datetime, "\n";
}