[#BloombergLP-bdlt-PackedCalendar_DateRef] = xref:BloombergLP.adoc[BloombergLP]::xref:BloombergLP/bdlt.adoc[bdlt]::PackedCalendar_DateRef :relfileprefix: ../../ :mrdocs: Reference to a `Date` for holiday and business‐day iterators. == Synopsis Declared in `<bdlt_packedcalendar.h>` [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- class PackedCalendar_DateRef : public xref:BloombergLP/bdlt/Date.adoc[Date] ---- == Description This private class is used by the arrow operator of the holiday iterator and business day iterator classes. The objects instantiated from this class serve as references to `Date` objects. == Base Classes [cols="1,4"] |=== | Name| Description | `xref:BloombergLP/bdlt/Date.adoc[Date]` | Value‐semantic type representing a date in the Unix (POSIX) calendar. |=== == Member Functions [cols="1,4"] |=== | Name| Description | xref:BloombergLP/bdlt/PackedCalendar_DateRef/2constructor-0b8.adoc[`PackedCalendar_DateRef`] [.small]#[constructor]# | Constructors | xref:BloombergLP/bdlt/PackedCalendar_DateRef/2destructor.adoc[`~PackedCalendar_DateRef`] [.small]#[destructor]# | Destroy this object. | xref:BloombergLP/bdlt/Date/operator_assign.adoc[`operator=`] | Assign to this object the value of the specified `rhs` date, and return a reference providing modifiable access to this object. | xref:BloombergLP/bdlt/Date/addDaysIfValid.adoc[`addDaysIfValid`] | Add `numDays` if the result is a supported date; otherwise do nothing. | xref:BloombergLP/bdlt/Date/bdexStreamIn.adoc[`bdexStreamIn`] | Assign to this object the value read from the specified BDEX stream. | xref:BloombergLP/bdlt/Date/bdexStreamOut.adoc[`bdexStreamOut`] | Write this date to the specified output stream. | xref:BloombergLP/bdlt/Date/day.adoc[`day`] | Return the day of the month in the range `[1 .. 31]` of this date. | xref:BloombergLP/bdlt/Date/dayOfWeek.adoc[`dayOfWeek`] | Return the day of the week in the range `[DayOfWeek::e_SUN .. DayOfWeek::e_SAT]` of this date. | xref:BloombergLP/bdlt/Date/dayOfYear.adoc[`dayOfYear`] | Return the day of the year in the range `[1 .. 366]` of this date. | xref:BloombergLP/bdlt/Date/getYearDay.adoc[`getYearDay`] | Load, into the specified `year` and `dayOfYear`, the respective `year` and `dayOfYear` attribute values of this date. | xref:BloombergLP/bdlt/Date/getYearMonthDay.adoc[`getYearMonthDay`] | Load, into the specified `year`, `month`, and `day`, the respective `year`, `month`, and `day` attribute values of this date. | xref:BloombergLP/bdlt/Date/month.adoc[`month`] | Return the month of the year in the range `[1 .. 12]` of this date. | xref:BloombergLP/bdlt/Date/monthOfYear.adoc[`monthOfYear`] | Return the month of the year in the range `[MonthOfYear::e_JAN .. MonthOfYear::e_DEC]` of this date. | xref:BloombergLP/bdlt/PackedCalendar_DateRef/operator_bitand.adoc[`operator&`] | Return a proxy object to this object's referenced date. | xref:BloombergLP/bdlt/Date/operator_inc.adoc[`operator++`] | Advance this date by one day. | xref:BloombergLP/bdlt/Date/operator_plus_eq.adoc[`operator+=`] | Advance this date by the specified (signed) number of days. | xref:BloombergLP/bdlt/Date/operator_dec.adoc[`operator‐‐`] | Move this date earlier by one day. | xref:BloombergLP/bdlt/Date/operator_minus_eq.adoc[`operator‐=`] | Move this date earlier by the specified (signed) number of days. | xref:BloombergLP/bdlt/Date/print.adoc[`print`] | Write this date to the specified output stream in a human‐readable form. | xref:BloombergLP/bdlt/Date/setYearDay.adoc[`setYearDay`] | Set this date to the specified `year` and `dayOfYear`. | xref:BloombergLP/bdlt/Date/setYearDayIfValid.adoc[`setYearDayIfValid`] | Set this date from `year` and `dayOfYear` if they form a valid value. | xref:BloombergLP/bdlt/Date/setYearMonthDay.adoc[`setYearMonthDay`] | Set this date to the specified `year`, `month`, and `day`. | xref:BloombergLP/bdlt/Date/setYearMonthDayIfValid.adoc[`setYearMonthDayIfValid`] | Set this date from Y/M/D if they form a valid value; otherwise do nothing. | xref:BloombergLP/bdlt/Date/streamOut.adoc[`streamOut`] | Write this date to the specified stream in a single‐line format. | xref:BloombergLP/bdlt/Date/validateAndSetYearDay.adoc[`validateAndSetYearDay`] | Set this date from `year` and `dayOfYear` if they form a valid value. | xref:BloombergLP/bdlt/Date/validateAndSetYearMonthDay.adoc[`validateAndSetYearMonthDay`] | Set this date from Y/M/D if they form a valid value; otherwise do nothing. | xref:BloombergLP/bdlt/Date/year.adoc[`year`] | Return the year in the range `[1 .. 9999]` of this date. |=== == Static Member Functions [cols="1,4"] |=== | Name| Description | xref:BloombergLP/bdlt/Date/isValid-09.adoc[`isValid`] | `isValid` overloads | xref:BloombergLP/bdlt/Date/isValidYearDay.adoc[`isValidYearDay`] | Return `true` if `year` and `dayOfYear` form a valid `Date` value. | xref:BloombergLP/bdlt/Date/isValidYearMonthDay.adoc[`isValidYearMonthDay`] | Return `true` if `year`, `month`, and `day` form a valid `Date` value. | xref:BloombergLP/bdlt/Date/maxSupportedBdexVersion-06.adoc[`maxSupportedBdexVersion`] | `maxSupportedBdexVersion` overloads | xref:BloombergLP/bdlt/Date/maxSupportedVersion.adoc[`maxSupportedVersion`] | Return the most current BDEX streaming version number supported by this class. |=== == Non-Member Functions [cols="1,4"] |=== | Name| Description | xref:BloombergLP/bdlt/operator_not_eq-0cd.adoc[`operator!=`] | Return `true` if the two dates do not have the same value. | xref:BloombergLP/bdlt/operator_plus-04.adoc[`operator+`] | Return the date that is later by `numDays` from the specified `date`. | xref:BloombergLP/bdlt/operator_inc-0f.adoc[`operator++`] | Advance `date` by one day and return its previous value. | xref:BloombergLP/bdlt/operator_minus-00f.adoc[`operator‐`] | Return the signed number of days between two dates. | xref:BloombergLP/bdlt/operator_minus-09c.adoc[`operator‐`] | Return the date that is earlier by `numDays` from the specified `date`. | xref:BloombergLP/bdlt/operator_dec-01.adoc[`operator‐‐`] | Move `date` earlier by one day and return its previous value. | xref:BloombergLP/bdlt/operator_lt-01.adoc[`operator<`] | Return `true` if the specified `lhs` date is earlier than the specified `rhs` date, and `false` otherwise. | xref:BloombergLP/bdlt/operator_le-04.adoc[`operator<=`] | Return `true` if the specified `lhs` date is earlier than or the same as the specified `rhs` date, and `false` otherwise. | xref:BloombergLP/bdlt/operator_eq-057.adoc[`operator==`] | Return `true` if the two dates have the same value. | xref:BloombergLP/bdlt/operator_gt-0c.adoc[`operator>`] | Return `true` if the specified `lhs` date is later than the specified `rhs` date, and `false` otherwise. | xref:BloombergLP/bdlt/operator_ge-079.adoc[`operator>=`] | Return `true` if the specified `lhs` date is later than or the same as the specified `rhs` date, and `false` otherwise. |=== [.small]#Created with https://www.mrdocs.com[MrDocs]#