1#!/usr/bin/perl -w 2use strict; 3 4=pod 5 6This example shows a simple fall through parser that tries 7a few of the other formatting modules, _then_ fails. 8 9=cut 10 11package DateTime::Format::Fall; 12use DateTime::Format::HTTP; 13use DateTime::Format::Mail; 14use DateTime::Format::IBeat; 15 16use DateTime::Format::Builder ( 17 parsers => { 18 parse_datetime => [ 19 sub { 20 eval { DateTime::Format::HTTP->parse_datetime( $_[1] ) }; 21 }, 22 sub { 23 eval { DateTime::Format::Mail->parse_datetime( $_[1] ) }; 24 }, 25 sub { 26 eval { DateTime::Format::IBeat->parse_datetime( $_[1] ) }; 27 }, 28 ] 29 } 30); 31 32package main; 33 34for ( '@d19.07.03 @704', '20030719T155345', 'gibberish' ) { 35 print DateTime::Format::Fall->parse_datetime($_)->datetime, "\n"; 36} 37