Set::Crontab3pm
Expand crontab(5)-style integer lists
Usage
$s = Set::Crontab->new("1-9/3,>15,>30,!23", [0..30]);
if ($s->contains(3)) { ... }
Overview
Set::Crontab parses crontab-style lists of integers and defines some utility functions to make it easier to deal with them.
Syntax
Numbers, ranges, *, and step values all work exactly as described in crontab(5). A few extensions to the standard syntax are described below.
- < and >
-
<N selects the elements smaller than N from the entire range, and adds them to the set. >N does likewise for elements larger than N.
- !
-
!N excludes N from the set. It applies to the other specified range; otherwise it applies to the specified ranges (i.e. "!3" with a range of "1-10" corresponds to "1-2,4-10", but ">3,!7" in the same range means "4-6,8-10").
Functions
- new($spec, [@range])
-
Creates a new Set::Crontab object and returns a reference to it.
- contains($num)
-
Returns true if
$numexists in the set.
list()-
Returns the expanded list corresponding to the set. Elements are in ascending order.
The functions described above croak if they are called with incorrect arguments.
Releases
10 releases since Debian 4.0 (Etch); the text changed 4 times.