r61258 - in /trunk/libdatetime-format-natural-perl: ./ debian/ lib/DateTime/Format/ lib/DateTime/Format/Natural/ lib/DateTime/Format/Natural/Lang/ t/
carnil-guest at users.alioth.debian.org
carnil-guest at users.alioth.debian.org
Thu Aug 5 22:06:27 UTC 2010
Author: carnil-guest
Date: Thu Aug 5 22:06:15 2010
New Revision: 61258
URL: http://svn.debian.org/wsvn/pkg-perl/?sc=1&rev=61258
Log:
New upstream release
Added:
trunk/libdatetime-format-natural-perl/t/08-parse_aliases.t
- copied unchanged from r61257, branches/upstream/libdatetime-format-natural-perl/current/t/08-parse_aliases.t
trunk/libdatetime-format-natural-perl/t/09-parse_success.t
- copied unchanged from r61257, branches/upstream/libdatetime-format-natural-perl/current/t/09-parse_success.t
trunk/libdatetime-format-natural-perl/t/10-parse_failure.t
- copied unchanged from r61257, branches/upstream/libdatetime-format-natural-perl/current/t/10-parse_failure.t
trunk/libdatetime-format-natural-perl/t/11-parse_assert.t
- copied unchanged from r61257, branches/upstream/libdatetime-format-natural-perl/current/t/11-parse_assert.t
trunk/libdatetime-format-natural-perl/t/12-regression.t
- copied unchanged from r61257, branches/upstream/libdatetime-format-natural-perl/current/t/12-regression.t
trunk/libdatetime-format-natural-perl/t/13-state.t
- copied unchanged from r61257, branches/upstream/libdatetime-format-natural-perl/current/t/13-state.t
trunk/libdatetime-format-natural-perl/t/14-trace.t
- copied unchanged from r61257, branches/upstream/libdatetime-format-natural-perl/current/t/14-trace.t
Removed:
trunk/libdatetime-format-natural-perl/t/08-parse_failure.t
trunk/libdatetime-format-natural-perl/t/09-parse_aliases.t
trunk/libdatetime-format-natural-perl/t/10-parse_assert.t
trunk/libdatetime-format-natural-perl/t/11-regression.t
trunk/libdatetime-format-natural-perl/t/12-state.t
trunk/libdatetime-format-natural-perl/t/13-trace.t
Modified:
trunk/libdatetime-format-natural-perl/Changes
trunk/libdatetime-format-natural-perl/MANIFEST
trunk/libdatetime-format-natural-perl/META.yml
trunk/libdatetime-format-natural-perl/debian/changelog
trunk/libdatetime-format-natural-perl/lib/DateTime/Format/Natural.pm
trunk/libdatetime-format-natural-perl/lib/DateTime/Format/Natural/Calc.pm
trunk/libdatetime-format-natural-perl/lib/DateTime/Format/Natural/Formatted.pm
trunk/libdatetime-format-natural-perl/lib/DateTime/Format/Natural/Lang/EN.pm
Modified: trunk/libdatetime-format-natural-perl/Changes
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libdatetime-format-natural-perl/Changes?rev=61258&op=diff
==============================================================================
--- trunk/libdatetime-format-natural-perl/Changes (original)
+++ trunk/libdatetime-format-natural-perl/Changes Thu Aug 5 22:06:15 2010
@@ -1,4 +1,32 @@
Revision history for Perl extension DateTime::Format::Natural.
+
+0.89 2010-08-05 <schubiger at cpan.org>
+
+ - Merged development version to stable.
+
+0.88_02 2010-07-29 <schubiger at cpan.org>
+
+ - Replace calling of _valid_date() in _count_weekday_variant_month()
+ with _check_date(), because errors are handled separate.
+
+ - Use more descriptive variable names in _parse_formatted_ymd().
+
+ - Minor indentation and code tweaks.
+
+0.88_01 2010-07-18 <schubiger at cpan.org>
+
+ - Check if suffixes used for ordinal numbers are suitable.
+
+ - Test that invalid ordinal numbers fail and valid ones succeed.
+
+ - Add a test file for the tests expected to succeed.
+
+ - Verify for parse failures their errors emitted.
+
+ - While processing grammar expressions, save all captured values
+ in order to pass the extra ones to the extended checks.
+
+ - Improve whitespace of regular expressions handling durations.
0.88 2010-06-16 <schubiger at cpan.org>
Modified: trunk/libdatetime-format-natural-perl/MANIFEST
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libdatetime-format-natural-perl/MANIFEST?rev=61258&op=diff
==============================================================================
--- trunk/libdatetime-format-natural-perl/MANIFEST (original)
+++ trunk/libdatetime-format-natural-perl/MANIFEST Thu Aug 5 22:06:15 2010
@@ -26,11 +26,12 @@
t/05-parse_time_zone.t
t/06-parse_prefer_future.t
t/07-parse_datetime.t
-t/08-parse_failure.t
-t/09-parse_aliases.t
-t/10-parse_assert.t
-t/11-regression.t
-t/12-state.t
-t/13-trace.t
+t/08-parse_aliases.t
+t/09-parse_success.t
+t/10-parse_failure.t
+t/11-parse_assert.t
+t/12-regression.t
+t/13-state.t
+t/14-trace.t
t/pod-coverage.t
t/pod.t
Modified: trunk/libdatetime-format-natural-perl/META.yml
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libdatetime-format-natural-perl/META.yml?rev=61258&op=diff
==============================================================================
--- trunk/libdatetime-format-natural-perl/META.yml (original)
+++ trunk/libdatetime-format-natural-perl/META.yml Thu Aug 5 22:06:15 2010
@@ -1,6 +1,6 @@
---
name: DateTime-Format-Natural
-version: 0.88
+version: 0.89
author:
- 'Steven Schubiger <schubiger at cpan.org>'
abstract: Create machine readable date/time with natural parsing logic
@@ -29,13 +29,13 @@
provides:
DateTime::Format::Natural:
file: lib/DateTime/Format/Natural.pm
- version: 0.88
+ version: 0.89
DateTime::Format::Natural::Aliases:
file: lib/DateTime/Format/Natural/Aliases.pm
version: 0.03
DateTime::Format::Natural::Calc:
file: lib/DateTime/Format/Natural/Calc.pm
- version: 1.34
+ version: 1.35
DateTime::Format::Natural::Compat:
file: lib/DateTime/Format/Natural/Compat.pm
version: 0.07
@@ -44,7 +44,7 @@
version: 0.04
DateTime::Format::Natural::Formatted:
file: lib/DateTime/Format/Natural/Formatted.pm
- version: 0.04
+ version: 0.05
DateTime::Format::Natural::Helpers:
file: lib/DateTime/Format/Natural/Helpers.pm
version: 0.06
@@ -53,7 +53,7 @@
version: 1.06
DateTime::Format::Natural::Lang::EN:
file: lib/DateTime/Format/Natural/Lang/EN.pm
- version: 1.37
+ version: 1.38
DateTime::Format::Natural::Test:
file: lib/DateTime/Format/Natural/Test.pm
version: 0.05
Modified: trunk/libdatetime-format-natural-perl/debian/changelog
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libdatetime-format-natural-perl/debian/changelog?rev=61258&op=diff
==============================================================================
--- trunk/libdatetime-format-natural-perl/debian/changelog (original)
+++ trunk/libdatetime-format-natural-perl/debian/changelog Thu Aug 5 22:06:15 2010
@@ -1,3 +1,9 @@
+libdatetime-format-natural-perl (0.89-1) UNRELEASED; urgency=low
+
+ * New upstream release
+
+ -- Salvatore Bonaccorso <salvatore.bonaccorso at gmail.com> Fri, 06 Aug 2010 00:05:52 +0200
+
libdatetime-format-natural-perl (0.88-1) unstable; urgency=low
* New upstream release
Modified: trunk/libdatetime-format-natural-perl/lib/DateTime/Format/Natural.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libdatetime-format-natural-perl/lib/DateTime/Format/Natural.pm?rev=61258&op=diff
==============================================================================
--- trunk/libdatetime-format-natural-perl/lib/DateTime/Format/Natural.pm (original)
+++ trunk/libdatetime-format-natural-perl/lib/DateTime/Format/Natural.pm Thu Aug 5 22:06:15 2010
@@ -18,7 +18,7 @@
use Scalar::Util qw(blessed);
use Storable qw(dclone);
-our $VERSION = '0.88';
+our $VERSION = '0.89';
validation_options(
on_fail => sub
@@ -337,7 +337,7 @@
my $valid_expression = true;
my $definition = $expression->[0];
my @positions = sort {$a <=> $b} keys %$definition;
- my %regex_stack;
+ my (%first_stack, %rest_stack);
foreach my $pos (@positions) {
if ($types->[$pos] eq 'SCALAR') {
if (defined $definition->{$pos}) {
@@ -351,9 +351,9 @@
}
}
elsif ($types->[$pos] eq 'REGEXP') {
- local $1;
- if (${$self->_token($pos)} =~ $definition->{$pos}) {
- $regex_stack{$pos} = $1 if defined $1;
+ if (my @captured = ${$self->_token($pos)} =~ $definition->{$pos}) {
+ $first_stack{$pos} = shift @captured;
+ $rest_stack{$pos} = [ @captured ];
next;
}
else {
@@ -371,7 +371,7 @@
foreach my $check (@{$expression->[2]}) {
my @pos = @{$expression->[1][$i++]};
my $error;
- $valid_expression &= $check->(\%regex_stack, \@pos, \$error);
+ $valid_expression &= $check->(\%first_stack, \%rest_stack, \@pos, \$error);
unless ($valid_expression) {
$self->_set_error("($error)");
last;
@@ -388,9 +388,9 @@
$values[$c++] = ref $pos
? $index eq 'VALUE'
? $pos->{$index}
- : $self->SUPER::_helper($pos->{$index}, $regex_stack{$index})
- : exists $regex_stack{$index}
- ? $regex_stack{$index}
+ : $self->SUPER::_helper($pos->{$index}, $first_stack{$index})
+ : exists $first_stack{$index}
+ ? $first_stack{$index}
: ${$self->_token($index)};
}
my $worker = "SUPER::$expression->[5]->[$i]";
Modified: trunk/libdatetime-format-natural-perl/lib/DateTime/Format/Natural/Calc.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libdatetime-format-natural-perl/lib/DateTime/Format/Natural/Calc.pm?rev=61258&op=diff
==============================================================================
--- trunk/libdatetime-format-natural-perl/lib/DateTime/Format/Natural/Calc.pm (original)
+++ trunk/libdatetime-format-natural-perl/lib/DateTime/Format/Natural/Calc.pm Thu Aug 5 22:06:15 2010
@@ -8,7 +8,7 @@
DateTime::Format::Natural::Wrappers
);
-our $VERSION = '1.34';
+our $VERSION = '1.35';
use constant MORNING => '08';
use constant AFTERNOON => '14';
@@ -255,9 +255,10 @@
$count,
);
};
- if (!$@ and defined $year && defined $month && defined $day
- and $self->_valid_date(year => $year, month => $month, day => $day))
- {
+ if (!$@
+ and defined $year && defined $month && defined $day
+ and $self->_check_date($year, $month, $day)
+ ) {
$self->_set(
year => $year,
month => $month,
Modified: trunk/libdatetime-format-natural-perl/lib/DateTime/Format/Natural/Formatted.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libdatetime-format-natural-perl/lib/DateTime/Format/Natural/Formatted.pm?rev=61258&op=diff
==============================================================================
--- trunk/libdatetime-format-natural-perl/lib/DateTime/Format/Natural/Formatted.pm (original)
+++ trunk/libdatetime-format-natural-perl/lib/DateTime/Format/Natural/Formatted.pm Thu Aug 5 22:06:15 2010
@@ -4,7 +4,7 @@
use warnings;
use boolean qw(true false);
-our $VERSION = '0.04';
+our $VERSION = '0.05';
sub _parse_formatted_ymd
{
@@ -14,19 +14,19 @@
my $date = $self->_split_formatted($date_string);
my $date_sep = quotemeta((keys %$count)[0]);
- my @chunks = split /$date_sep/, $date;
+ my @date_chunks = split /$date_sep/, $date;
my $i = 0;
- my %length = map { length $_ => $i++ } @chunks;
+ my %chunks_length = map { length $_ => $i++ } @date_chunks;
my $format = lc $self->{Format};
my $format_sep;
my $lax = false;
- if (exists $length{4}) {
+ if (exists $chunks_length{4}) {
$format = join $date_sep,
- ($length{4} == 0
+ ($chunks_length{4} == 0
? qw(yyyy mm dd)
: ($format =~ /^m/
? qw(mm dd yyyy)
@@ -35,7 +35,7 @@
);
$lax = true;
}
- elsif ($date_sep =~ /^\\[-.]$/ and $format !~ /$date_sep/) {
+ elsif ($date_sep =~ /^\\[-.]$/ && $format !~ /$date_sep/) {
$format = join $date_sep, qw(dd mm yy);
$lax = true;
}
@@ -47,34 +47,32 @@
}
$format_sep ||= $date_sep;
- if (not $lax and ($format_sep ne $date_sep)) {
+ if (!$lax && $format_sep ne $date_sep) {
$self->_set_failure;
$self->_set_error("(mismatch between format and date separator)");
return $self->_get_datetime_object;
}
- my @separated_order = split /$format_sep/, $format;
+ my @format_order = split /$format_sep/, $format;
my ($d, $m, $y) = do {
- my %f = map { substr($_, 0, 1) => true } @separated_order;
+ my %f = map { substr($_, 0, 1) => true } @format_order;
($f{d}, $f{m}, $f{y});
};
- unless (@separated_order == 3 and ($d && $m && $y)) {
+ unless (@format_order == 3 and $d && $m && $y) {
$self->_set_failure;
$self->_set_error("('format' parameter invalid)");
return $self->_get_datetime_object;
}
- my $separated_index = 0;
- my $separated_indices = { map { substr($_, 0, 1) => $separated_index++ } @separated_order };
-
- my @bits = split /$date_sep/, $date;
+ $i = 0;
+ my %format_index = map { substr($_, 0, 1) => $i++ } @format_order;
my $century = $self->{datetime}
? int($self->{datetime}->year / 100)
: substr((localtime)[5] + 1900, 0, 2);
- my ($day, $month, $year) = map $bits[$separated_indices->{$_}], qw(d m y);
+ my ($day, $month, $year) = map $date_chunks[$format_index{$_}], qw(d m y);
if (length $year == 2) { $year = "$century$year" };
Modified: trunk/libdatetime-format-natural-perl/lib/DateTime/Format/Natural/Lang/EN.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libdatetime-format-natural-perl/lib/DateTime/Format/Natural/Lang/EN.pm?rev=61258&op=diff
==============================================================================
--- trunk/libdatetime-format-natural-perl/lib/DateTime/Format/Natural/Lang/EN.pm (original)
+++ trunk/libdatetime-format-natural-perl/lib/DateTime/Format/Natural/Lang/EN.pm Thu Aug 5 22:06:15 2010
@@ -6,14 +6,16 @@
#use boolean qw(true false);
use constant true => 1;
use constant false => 0;
+use constant skip => true;
use DateTime::Format::Natural::Helpers qw(%flag);
-our $VERSION = '1.37';
+our $VERSION = '1.38';
our (%init,
%timespan,
%units,
+ %suffixes,
%RE,
%data_weekdays,
%data_weekdays_abbrev,
@@ -31,6 +33,7 @@
%init = (tokens => sub {});
%timespan = (literal => 'to');
%units = (ordered => [ qw(second minute hour day week month year) ]);
+%suffixes = (ordinal => join '|', qw(st nd rd th d));
%RE = (number => qr/^(\d+)$/,
year => qr/^(\d{4})$/,
@@ -38,8 +41,8 @@
time_am => qr/^((?:\d{1,2})(?:\:\d{2})?)am$/i,
time_pm => qr/^((?:\d{1,2})(?:\:\d{2})?)pm$/i,
time_full => qr/^(\d{1,2}\:\d{2}\:\d{2})$/,
- day => qr/^(\d+)(?:st|nd|rd|th)?$/i,
- monthday => qr/^(\d{1,2})(?:st|nd|rd|th)?$/i);
+ day => qr/^(\d+)($suffixes{ordinal})?$/i,
+ monthday => qr/^(\d{1,2})($suffixes{ordinal})?$/i);
{
my $i = 1;
@@ -91,13 +94,13 @@
for => sub {
my ($date_strings) = @_;
return (@$date_strings == 1
- && $date_strings->[0] =~ /^for\s+/i);
+ && $date_strings->[0] =~ /^for \s+/ix);
},
first_to_last => sub {
my ($date_strings) = @_;
return (@$date_strings == 2
&& $date_strings->[0] =~ /^first$/i
- && $date_strings->[1] =~ /^last\s+/i);
+ && $date_strings->[1] =~ /^last \s+/ix);
},
date_time_to_time => sub {
my ($date_strings) = @_;
@@ -130,9 +133,9 @@
%extended_checks = (
meridiem => sub
{
- my ($captured, $pos, $error) = @_;
-
- my ($hour) = split /:/, $captured->{$pos->[0]};
+ my ($first_stack, $rest_stack, $pos, $error) = @_;
+
+ my ($hour) = split /:/, $first_stack->{$pos->[0]};
if ($hour == 0) {
$$error = 'hour zero must be literal 12';
@@ -144,15 +147,59 @@
}
return true;
},
+ ordinal => sub
+ {
+ my ($first_stack, $rest_stack, $pos, $error) = @_;
+
+ my $suffix = do {
+ local $_ = $rest_stack->{$pos->[0]}->[0];
+ defined $_ ? lc $_ : undef;
+ };
+ return skip unless defined $suffix;
+
+ my $numeral = $first_stack->{$pos->[0]};
+
+ my %ordinals = (
+ 1 => { regex => qr/^st$/, suffix => 'st' },
+ 2 => { regex => qr/^n?d$/, suffix => 'nd' },
+ 3 => { regex => qr/^r?d$/, suffix => 'rd' },
+ );
+
+ my $fail_message = sub { "letter suffix should be '$_[0]'" };
+
+ local $1;
+ if ($numeral == 0) {
+ unless ($suffix eq 'th') {
+ $$error = $fail_message->('th');
+ return false;
+ }
+ return true;
+ }
+ elsif ($numeral =~ /([1-3])$/ && $numeral !~ /1\d$/) {
+ unless ($suffix =~ $ordinals{$1}->{regex}) {
+ $$error = $fail_message->($ordinals{$1}->{suffix});
+ return false;
+ }
+ return true;
+ }
+ elsif ($numeral > 3) {
+ unless ($suffix eq 'th') {
+ $$error = $fail_message->('th');
+ return false;
+ }
+ return true;
+ }
+ return skip; # never reached
+ },
suffix => sub
{
- my ($captured, $pos, $error) = @_;
+ my ($first_stack, $rest_stack, $pos, $error) = @_;
my @checks = (
- { cond => sub { $captured->{$pos->[0]} == 1 && $captured->{$pos->[1]} =~ $data_helpers{suffix} },
+ { cond => sub { $first_stack->{$pos->[0]} == 1 && $first_stack->{$pos->[1]} =~ $data_helpers{suffix} },
error => "suffix 's' without plural",
},
- { cond => sub { $captured->{$pos->[0]} > 1 && $captured->{$pos->[1]} !~ $data_helpers{suffix} },
+ { cond => sub { $first_stack->{$pos->[0]} > 1 && $first_stack->{$pos->[1]} !~ $data_helpers{suffix} },
error => "plural without suffix 's'",
},
);
@@ -1015,8 +1062,8 @@
[ 'REGEXP', 'REGEXP' ],
[
{ 0 => $RE{monthday}, 1 => $RE{month} },
- [],
- [],
+ [ [ 0 ] ],
+ [ $extended_checks{ordinal} ],
[
[
0,
@@ -1032,8 +1079,8 @@
],
[
{ 0 => $RE{month}, 1 => $RE{monthday} },
- [],
- [],
+ [ [ 1 ] ],
+ [ $extended_checks{ordinal} ],
[
[
1,
@@ -1052,8 +1099,8 @@
[ 'REGEXP', 'REGEXP', 'REGEXP' ],
[
{ 0 => $RE{month}, 1 => $RE{monthday}, 2 => $RE{time} },
- [],
- [],
+ [ [ 1 ] ],
+ [ $extended_checks{ordinal} ],
[
[
1,
@@ -1067,8 +1114,8 @@
],
[
{ 0 => $RE{month}, 1 => $RE{monthday}, 2 => $RE{time_am} },
- [ [ 2 ] ],
- [ $extended_checks{meridiem} ],
+ [ [ 1 ], [ 2 ] ],
+ [ $extended_checks{ordinal}, $extended_checks{meridiem} ],
[
[
1,
@@ -1084,8 +1131,8 @@
],
[
{ 0 => $RE{month}, 1 => $RE{monthday}, 2 => $RE{time_pm} },
- [ [ 2 ] ],
- [ $extended_checks{meridiem} ],
+ [ [ 1 ], [ 2 ] ],
+ [ $extended_checks{ordinal}, $extended_checks{meridiem} ],
[
[
1,
@@ -1104,8 +1151,8 @@
[ 'REGEXP', 'REGEXP', 'REGEXP', 'REGEXP', 'SCALAR' ],
[
{ 0 => $RE{monthday}, 1 => $RE{month}, 2 => $RE{number}, 3 => qr/^(years?)$/i, 4 => 'ago' },
- [ [ 2, 3 ] ],
- [ $extended_checks{suffix} ],
+ [ [ 0 ], [ 2, 3 ] ],
+ [ $extended_checks{ordinal}, $extended_checks{suffix} ],
[
[
0,
@@ -1122,8 +1169,8 @@
[ 'REGEXP', 'REGEXP', 'REGEXP', 'SCALAR' ],
[
{ 0 => $RE{monthday}, 1 => $RE{month}, 2 => qr/^(next)$/i, 3 => 'year' },
- [],
- [],
+ [ [ 0 ] ],
+ [ $extended_checks{ordinal} ],
[
[
0,
@@ -1139,8 +1186,8 @@
],
[
{ 0 => $RE{monthday}, 1 => $RE{month}, 2 => qr/^(this)$/i, 3 => 'year' },
- [],
- [],
+ [ [ 0 ] ],
+ [ $extended_checks{ordinal} ],
[
[
0,
@@ -1156,8 +1203,8 @@
],
[
{ 0 => $RE{monthday}, 1 => $RE{month}, 2 => qr/^(last)$/i, 3 => 'year' },
- [],
- [],
+ [ [ 0 ] ],
+ [ $extended_checks{ordinal} ],
[
[
0,
@@ -1176,8 +1223,8 @@
[ 'REGEXP', 'REGEXP', 'REGEXP' ],
[
{ 0 => $RE{month}, 1 => $RE{monthday}, 2 => $RE{year} },
- [],
- [],
+ [ [ 1 ] ],
+ [ $extended_checks{ordinal} ],
[
[
1,
@@ -1850,8 +1897,8 @@
[ 'REGEXP', 'REGEXP' ],
[
{ 0 => $RE{day}, 1 => $RE{weekday} },
- [],
- [],
+ [ [ 0 ] ],
+ [ $extended_checks{ordinal} ],
[
[
0,
@@ -1867,8 +1914,8 @@
[ 'REGEXP', 'SCALAR' ],
[
{ 0 => $RE{day}, 1 => 'day' },
- [],
- [],
+ [ [ 0 ] ],
+ [ $extended_checks{ordinal} ],
[
[
0,
@@ -1884,8 +1931,8 @@
[ 'REGEXP', 'SCALAR', 'REGEXP', 'SCALAR' ],
[
{ 0 => $RE{day}, 1 => 'day', 2 => qr/^(next)$/i, 3 => 'year' },
- [],
- [],
+ [ [ 0 ] ],
+ [ $extended_checks{ordinal} ],
[
[
0,
@@ -1898,8 +1945,8 @@
],
[
{ 0 => $RE{day}, 1 => 'day', 2 => qr/^(this)$/i, 3 => 'year' },
- [],
- [],
+ [ [ 0 ] ],
+ [ $extended_checks{ordinal} ],
[
[
0,
@@ -1912,8 +1959,8 @@
],
[
{ 0 => $RE{day}, 1 => 'day', 2 => qr/^(last)$/i, 3 => 'year' },
- [],
- [],
+ [ [ 0 ] ],
+ [ $extended_checks{ordinal} ],
[
[
0,
@@ -2574,8 +2621,8 @@
[ 'REGEXP', 'SCALAR', 'REGEXP', 'SCALAR' ],
[
{ 0 => $RE{day}, 1 => 'day', 2 => qr/^(next)$/i, 3 => 'week' },
- [],
- [],
+ [ [ 0 ] ],
+ [ $extended_checks{ordinal} ],
[
[
{ 2 => [ $flag{last_this_next} ] },
@@ -2588,8 +2635,8 @@
],
[
{ 0 => $RE{day}, 1 => 'day', 2 => qr/^(this)$/i, 3 => 'week' },
- [],
- [],
+ [ [ 0 ] ],
+ [ $extended_checks{ordinal} ],
[
[
{ 2 => [ $flag{last_this_next} ] },
@@ -2602,8 +2649,8 @@
],
[
{ 0 => $RE{day}, 1 => 'day', 2 => qr/^(last)$/i, 3 => 'week' },
- [],
- [],
+ [ [ 0 ] ],
+ [ $extended_checks{ordinal} ],
[
[
{ 2 => [ $flag{last_this_next} ] },
@@ -2619,8 +2666,8 @@
[ 'REGEXP', 'SCALAR', 'REGEXP', 'SCALAR' ],
[
{ 0 => $RE{day}, 1 => 'day', 2 => qr/^(next)$/i, 3 => 'month' },
- [],
- [],
+ [ [ 0 ] ],
+ [ $extended_checks{ordinal} ],
[
[
{ 2 => [ $flag{last_this_next} ] },
@@ -2633,8 +2680,8 @@
],
[
{ 0 => $RE{day}, 1 => 'day', 2 => qr/^(this)$/i, 3 => 'month' },
- [],
- [],
+ [ [ 0 ] ],
+ [ $extended_checks{ordinal} ],
[
[
{ 2 => [ $flag{last_this_next} ] },
@@ -2647,8 +2694,8 @@
],
[
{ 0 => $RE{day}, 1 => 'day', 2 => qr/^(last)$/i, 3 => 'month' },
- [],
- [],
+ [ [ 0 ] ],
+ [ $extended_checks{ordinal} ],
[
[
{ 2 => [ $flag{last_this_next} ] },
@@ -2754,8 +2801,8 @@
[ 'REGEXP', 'SCALAR', 'REGEXP', 'SCALAR' ],
[
{ 0 => $RE{day}, 1 => 'month', 2 => qr/^(next)$/i, 3 => 'year' },
- [],
- [],
+ [ [ 0 ] ],
+ [ $extended_checks{ordinal} ],
[
[
{ 2 => [ $flag{last_this_next} ] },
@@ -2768,8 +2815,8 @@
],
[
{ 0 => $RE{day}, 1 => 'month', 2 => qr/^(this)$/i, 3 => 'year' },
- [],
- [],
+ [ [ 0 ] ],
+ [ $extended_checks{ordinal} ],
[
[
{ 2 => [ $flag{last_this_next} ] },
@@ -2782,8 +2829,8 @@
],
[
{ 0 => $RE{day}, 1 => 'month', 2 => qr/^(last)$/i, 3 => 'year' },
- [],
- [],
+ [ [ 0 ] ],
+ [ $extended_checks{ordinal} ],
[
[
{ 2 => [ $flag{last_this_next} ] },
@@ -2865,8 +2912,8 @@
[ 'REGEXP', 'REGEXP', 'REGEXP', 'REGEXP' ],
[
{ 0 => $RE{day}, 1 => $RE{weekday}, 2 => qr/^(next)$/i, 3 => $RE{month} },
- [],
- [],
+ [ [ 0 ] ],
+ [ $extended_checks{ordinal} ],
[
[
{ 2 => [ $flag{last_this_next} ] },
@@ -2881,8 +2928,8 @@
],
[
{ 0 => $RE{day}, 1 => $RE{weekday}, 2 => qr/^(this)$/i, 3 => $RE{month} },
- [],
- [],
+ [ [ 0 ] ],
+ [ $extended_checks{ordinal} ],
[
[
{ 2 => [ $flag{last_this_next} ] },
@@ -2897,8 +2944,8 @@
],
[
{ 0 => $RE{day}, 1 => $RE{weekday}, 2 => qr/^(last)$/i, 3 => $RE{month} },
- [],
- [],
+ [ [ 0 ] ],
+ [ $extended_checks{ordinal} ],
[
[
{ 2 => [ $flag{last_this_next} ] },
@@ -3620,8 +3667,8 @@
[ 'REGEXP', 'REGEXP', 'REGEXP' ],
[
{ 0 => $RE{monthday}, 1 => $RE{month}, 2 => $RE{year} },
- [],
- [],
+ [ [ 0 ] ],
+ [ $extended_checks{ordinal} ],
[
[
0,
@@ -3635,8 +3682,8 @@
],
[
{ 0 => $RE{month}, 1 => $RE{monthday}, 2 => $RE{year} },
- [],
- [],
+ [ [ 1 ] ],
+ [ $extended_checks{ordinal} ],
[
[
1,
@@ -3653,8 +3700,8 @@
[ 'REGEXP', 'REGEXP', 'SCALAR', 'REGEXP' ],
[
{ 0 => $RE{day}, 1 => $RE{weekday}, 2 => 'in', 3 => $RE{month} },
- [],
- [],
+ [ [ 0 ] ],
+ [ $extended_checks{ordinal} ],
[
[
{ VALUE => 0 },
More information about the Pkg-perl-cvs-commits
mailing list