Minion
view release on metacpan or search on metacpan
lib/Minion/Util.pm view on Meta::CPAN
for my $v (@$values) { return $v if $v >= $after }
return undef;
}
sub _parse_field {
my ($field, $name, $min, $max, $names) = @_;
my $is_star = $field eq '*' ? 1 : 0;
my %set;
for my $part (split /,/, $field) {
my ($range, $step) = split m{/}, $part, 2;
$step //= 1;
croak qq{Invalid step "$step" in $name field} unless $step =~ /^[1-9]\d*$/;
my ($a, $b);
if ($range eq '*') { ($a, $b) = ($min, $max) }
elsif ($range =~ /^(\w+)-(\w+)$/) { ($a, $b) = (_resolve($1, $name, $names), _resolve($2, $name, $names)) }
elsif ($range =~ /^(\w+)$/) { $a = $b = _resolve($1, $name, $names) }
else { croak qq{Invalid $name field "$part"} }
croak qq{Value out of range in $name field "$part" ($min-$max)} if $a < $min || $b > $max || $a > $b;
( run in 1.694 second using v1.01-cache-2.11-cpan-71847e10f99 )