in src/WebJobs.Extensions/Extensions/Timers/Scheduling/CronSchedule.cs [21:45]
internal CronSchedule(CrontabSchedule schedule, ILogger logger)
{
_cronSchedule = schedule;
var cron = schedule.ToString();
var parts = cron.Split(new[] { ' ' }, StringSplitOptions.RemoveEmptyEntries);
IsInterval = false;
// in cron expressions, if any the first 3 parts (2 if not using seconds)
// contain "*", "-", or "/" then it is considered an interval
int partsToCheck = parts.Length == 6 ? 3 : 2;
for (int i = 0; i < partsToCheck; i++)
{
var part = parts[i];
if (part.Contains("*") ||
part.Contains("/") ||
part.Contains("-"))
{
IsInterval = true;
break;
}
}
_logger = logger ?? throw new ArgumentNullException(nameof(logger));
}