MCPcopy
hub / github.com/robfig/cron / parseDescriptor

Function parseDescriptor

parser.go:365–434  ·  parser.go::parseDescriptor

parseDescriptor returns a predefined schedule for the expression, or error if none matches.

(descriptor string, loc *time.Location)

Source from the content-addressed store, hash-verified

363
364// parseDescriptor returns a predefined schedule for the expression, or error if none matches.
365func parseDescriptor(descriptor string, loc *time.Location) (Schedule, error) {
366 switch descriptor {
367 case "@yearly", "@annually":
368 return &SpecSchedule{
369 Second: 1 << seconds.min,
370 Minute: 1 << minutes.min,
371 Hour: 1 << hours.min,
372 Dom: 1 << dom.min,
373 Month: 1 << months.min,
374 Dow: all(dow),
375 Location: loc,
376 }, nil
377
378 case "@monthly":
379 return &SpecSchedule{
380 Second: 1 << seconds.min,
381 Minute: 1 << minutes.min,
382 Hour: 1 << hours.min,
383 Dom: 1 << dom.min,
384 Month: all(months),
385 Dow: all(dow),
386 Location: loc,
387 }, nil
388
389 case "@weekly":
390 return &SpecSchedule{
391 Second: 1 << seconds.min,
392 Minute: 1 << minutes.min,
393 Hour: 1 << hours.min,
394 Dom: all(dom),
395 Month: all(months),
396 Dow: 1 << dow.min,
397 Location: loc,
398 }, nil
399
400 case "@daily", "@midnight":
401 return &SpecSchedule{
402 Second: 1 << seconds.min,
403 Minute: 1 << minutes.min,
404 Hour: 1 << hours.min,
405 Dom: all(dom),
406 Month: all(months),
407 Dow: all(dow),
408 Location: loc,
409 }, nil
410
411 case "@hourly":
412 return &SpecSchedule{
413 Second: 1 << seconds.min,
414 Minute: 1 << minutes.min,
415 Hour: all(hours),
416 Dom: all(dom),
417 Month: all(months),
418 Dow: all(dow),
419 Location: loc,
420 }, nil
421
422 }

Callers 1

ParseMethod · 0.85

Calls 2

allFunction · 0.85
EveryFunction · 0.85

Tested by

no test coverage detected