BloombergLP::bblb::ScheduleGenerationUtil::generateFromDayOfWeekAfterDayOfMonth

Load day-of-week-after-day-of-month schedule dates into the specified schedule.

Synopsis

Declared in <bblb_schedulegenerationutil.h>

static
void
generateFromDayOfWeekAfterDayOfMonth(
    bsl::vector<bdlt::Date>* schedule,
    bdlt::Date const& earliest,
    bdlt::Date const& latest,
    int exampleYear,
    int exampleMonth,
    int intervalInMonths,
    bdlt::DayOfWeek::Enum dayOfWeek,
    int dayOfMonth);

Description

Load, into the specified schedule, the chronologically increasing sequence of unique dates that are on the specified dayOfWeek on or after the specified dayOfMonth, integral multiples of the specified intervalInMonths away from the specified exampleYear and exampleMonth, and within the specified closed-interval [earliest, latest]. If any of the months required for the schedule have fewer than dayOfMonth days, return an empty schedule. The behavior is undefined unless earliest <= latest, 1 <= exampleYear <= 9999, 1 <= exampleMonth <= 12, 1 <= intervalInMonths, and 1 <= dayOfMonth <= 31.

Parameters

NameDescription
schedulereceives the generated date sequence
earliestinclusive start of the date window
latestinclusive end of the date window
exampleYearreference year for the interval lattice
exampleMonthreference month for the interval lattice
intervalInMonthsspacing between schedule months
dayOfWeekweekday required on or after dayOfMonth
dayOfMonthearliest day of month for the weekday search