parseCronExpression function
Parse a 5-field cron expression into expanded number arrays. Returns null if invalid or unsupported syntax.
Implementation
CronFields? parseCronExpression(String expr) {
final parts = expr.trim().split(RegExp(r'\s+'));
if (parts.length != 5) return null;
final expanded = <List<int>>[];
for (int i = 0; i < 5; i++) {
final result = _expandField(parts[i], _fieldRanges[i]);
if (result == null) return null;
expanded.add(result);
}
return CronFields(
minute: expanded[0],
hour: expanded[1],
dayOfMonth: expanded[2],
month: expanded[3],
dayOfWeek: expanded[4],
);
}