[#BloombergLP-bblb-ScheduleGenerationUtil-generateFromDayOfMonth-0f]
= xref:BloombergLP.adoc[BloombergLP]::xref:BloombergLP/bblb.adoc[bblb]::xref:BloombergLP/bblb/ScheduleGenerationUtil.adoc[ScheduleGenerationUtil]::generateFromDayOfMonth
:relfileprefix: ../../../
:mrdocs:

Load month&hyphen;day schedule dates into the specified `schedule`&period;

== Synopsis

Declared in `&lt;bblb&lowbar;schedulegenerationutil&period;h&gt;`

[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
static
void
generateFromDayOfMonth(
    xref:bsl/vector-00d.adoc[bsl::vector&lt;bdlt::Date&gt;]* schedule,
    xref:BloombergLP/bdlt/Date.adoc[bdlt::Date] const& earliest,
    xref:BloombergLP/bdlt/Date.adoc[bdlt::Date] const& latest,
    int exampleYear,
    int exampleMonth,
    int intervalInMonths,
    int targetDayOfMonth,
    int targetDayOfFeb = 0);
----

== Description

Load, into the specified `schedule`, the chronologically increasing sequence of unique dates that are on the specified `targetDayOfMonth` (or the last day of the month if `targetDayOfMonth` would be past the end of the month), integral multiples of the specified `intervalInMonths` away from the specified `exampleYear` and `exampleMonth`, and within the specified closed&hyphen;interval &grave;&lsqb;earliest, latest&rsqb;`&period; Optionally specify `targetDayOfFeb&grave; to replace `targetDayOfMonth` whenever the month of a `schedule` entry is February&period; The behavior is undefined unless `earliest &lt;&equals; latest`, &grave;1 &lt;&equals; exampleYear &lt;&equals; 9999`, `1 &lt;&equals; exampleMonth &lt;&equals; 12`, `1 &lt;&equals; intervalInMonths`, `1 &lt;&equals; targetDayOfMonth &lt;&equals; 31`, and `0 &lt;&equals; targetDayOfFeb &lt;&equals; 29&grave;&period;

== Parameters

[cols="1,4"]
|===
| Name| Description
| *schedule*
| receives the generated date sequence
| *earliest*
| inclusive start of the date window
| *latest*
| inclusive end of the date window
| *exampleYear*
| reference year for the interval lattice
| *exampleMonth*
| reference month for the interval lattice
| *intervalInMonths*
| spacing between schedule months
| *targetDayOfMonth*
| desired day of month (clamped to month length)
| *targetDayOfFeb*
| optional February day override&semi; 0 means unused
|===


[.small]#Created with https://www.mrdocs.com[MrDocs]#
