Skip to content

Commit ebb89d2

Browse files
committed
add more constants
1 parent a69b089 commit ebb89d2

File tree

1 file changed

+19
-0
lines changed

1 file changed

+19
-0
lines changed

src/croniter/croniter.py

+19
Original file line numberDiff line numberDiff line change
@@ -48,6 +48,24 @@
4848
hash_expression_re = re.compile(
4949
r'^(?P<hash_type>h|r)(\((?P<range_begin>\d+)-(?P<range_end>\d+)\))?(\/(?P<divisor>\d+))?$'
5050
)
51+
MINUTE_FIELD = 0
52+
HOUR_FIELD = 1
53+
DAY_FIELD = 2
54+
MONTH_FIELD = 3
55+
DOW_FIELD = 4
56+
SECOND_FIELD = 5
57+
YEAR_FIELD = 6
58+
UNIX_FIELDS = (MINUTE_FIELD, HOUR_FIELD, DAY_FIELD, MONTH_FIELD, DOW_FIELD)
59+
SECOND_FIELDS = (MINUTE_FIELD, HOUR_FIELD, DAY_FIELD, MONTH_FIELD, DOW_FIELD, SECOND_FIELD)
60+
YEAR_FIELDS = (MINUTE_FIELD, HOUR_FIELD, DAY_FIELD, MONTH_FIELD, DOW_FIELD, SECOND_FIELD, YEAR_FIELD)
61+
CRON_FIELDS = {
62+
'unix': UNIX_FIELDS,
63+
'second': SECOND_FIELDS,
64+
'year': UNIX_FIELDS,
65+
len(UNIX_FIELDS): UNIX_FIELDS,
66+
len(SECOND_FIELDS): SECOND_FIELDS,
67+
len(YEAR_FIELDS): UNIX_FIELDS,
68+
}
5169
UNIX_CRON_LEN = 5
5270
SECOND_CRON_LEN = 6
5371
YEAR_CRON_LEN = 7
@@ -196,6 +214,7 @@ def __init__(self, expr_format, start_time=None, ret_type=float,
196214
from_timestamp=self.dst_start_time if self._expand_from_start_time else None,
197215
second_at_beginning=second_at_beginning
198216
)
217+
self.fields = CRON_FIELDS[len(self.expanded)]
199218
self.expressions = EXPRESSIONS[(expr_format, hash_id, second_at_beginning)]
200219
self._is_prev = is_prev
201220

0 commit comments

Comments
 (0)