DateTime-Format-Builder

 view release on metacpan or  search on metacpan

lib/DateTime/Format/Builder/Parser.pm  view on Meta::CPAN


use strict;
use warnings;

our $VERSION = '0.83';

use Carp qw( croak );
use Params::Validate qw(
    validate SCALAR CODEREF UNDEF ARRAYREF
);
use Scalar::Util qw( weaken );

sub on_fail {
    my ( $self, $input ) = @_;
    my $maker = $self->maker;
    if ( $maker and $maker->can('on_fail') ) {
        $maker->on_fail($input);
    }
    else {
        croak __PACKAGE__ . ": Invalid date format: $input";
    }

lib/DateTime/Format/Builder/Parser.pm  view on Meta::CPAN

    return $self;
}

sub maker { $_[0]->{maker} }

sub set_maker {
    my $self  = shift;
    my $maker = shift;

    $self->{maker} = $maker;
    weaken $self->{maker}
        if ref $self->{maker};

    return $self;
}

sub fail {
    my ( $self, $parent, $input ) = @_;
    $self->{on_fail}->( $self, $input, $parent );
}



( run in 0.291 second using v1.01-cache-2.11-cpan-65fba6d93b7 )