[#BloombergLP-bdlt-PackedCalendar_BusinessDayConstIterator] = xref:BloombergLP.adoc[BloombergLP]::xref:BloombergLP/bdlt.adoc[bdlt]::PackedCalendar_BusinessDayConstIterator :relfileprefix: ../../ :mrdocs: Provide read‐only, sequential access in increasing (chronological) order to the business days in a `PackedCalendar` object. == Synopsis Declared in `<bdlt_packedcalendar.h>` [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- class PackedCalendar_BusinessDayConstIterator; ---- == Type Aliases [cols="1,4"] |=== | Name| Description | xref:BloombergLP/bdlt/PackedCalendar_BusinessDayConstIterator/difference_type.adoc[`difference_type`] | Iterator difference type. | xref:BloombergLP/bdlt/PackedCalendar_BusinessDayConstIterator/iterator_category.adoc[`iterator_category`] | Iterator category for this business‐day iterator. | xref:BloombergLP/bdlt/PackedCalendar_BusinessDayConstIterator/pointer.adoc[`pointer`] | Iterator pointer type. | xref:BloombergLP/bdlt/PackedCalendar_BusinessDayConstIterator/reference.adoc[`reference`] | The star operator returns a `PackedCalendar_DateRef` _by_ _value_. | xref:BloombergLP/bdlt/PackedCalendar_BusinessDayConstIterator/value_type.adoc[`value_type`] | Iterator value type. |=== == Member Functions [cols="1,4"] |=== | Name| Description | xref:BloombergLP/bdlt/PackedCalendar_BusinessDayConstIterator/2constructor.adoc[`PackedCalendar_BusinessDayConstIterator`] [.small]#[constructor]# | Create an iterator having the value of the specified `original` iterator. | xref:BloombergLP/bdlt/PackedCalendar_BusinessDayConstIterator/2destructor.adoc[`~PackedCalendar_BusinessDayConstIterator`] [.small]#[destructor]# | Destroy this object. | xref:BloombergLP/bdlt/PackedCalendar_BusinessDayConstIterator/operator_assign.adoc[`operator=`] | Assign to this iterator the value of the specified `rhs` iterator, and return a reference providing modifiable access to this object. | xref:BloombergLP/bdlt/PackedCalendar_BusinessDayConstIterator/operator_star.adoc[`operator*`] | Return a `PackedCalendar_DateRef` object that contains the date value of the business day referenced by this iterator. | xref:BloombergLP/bdlt/PackedCalendar_BusinessDayConstIterator/operator_inc.adoc[`operator++`] | Advance this iterator to refer to the next business day in the associated calendar, and return a reference providing modifiable access to this object. The behavior is undefined unless, on entry, this iterator references a valid business day. | xref:BloombergLP/bdlt/PackedCalendar_BusinessDayConstIterator/operator_dec.adoc[`operator‐‐`] | Regress this iterator to refer to the previous business day in the associated calendar, and return a reference providing modifiable access to this object. The behavior is undefined unless, on entry, this iterator references a valid business day that is not the first business day for the associated calendar. | xref:BloombergLP/bdlt/PackedCalendar_BusinessDayConstIterator/operator_ptr.adoc[`operator‐>`] | Return a date proxy for the business day referenced by this iterator. |=== == Friends [cols="1,4"] |=== | Name| Description | `xref:BloombergLP/bdlt/operator_not_eq-063.adoc[BloombergLP::bdlt::operator!=]` | Return `true` if the specified `lhs` and `rhs` iterators do not refer to the same element in the same calendar, and `false` otherwise. The behavior is undefined unless `lhs` and `rhs` both iterate over the same calendar. | `xref:BloombergLP/bdlt/operator_eq-0f.adoc[BloombergLP::bdlt::operator==]` | Return `true` if the specified `lhs` and `rhs` iterators refer to the same element in the same calendar, and `false` otherwise. The behavior is undefined unless `lhs` and `rhs` both iterate over the same calendar. | `xref:BloombergLP/bdlt/PackedCalendar.adoc[BloombergLP::bdlt::PackedCalendar]` | This class implements a space‐efficient, value‐semantic repository of weekend and holiday information over a _valid_ _range_ of dates. This valid range, `[firstDate() .. lastDate()]`, spans the first and last dates of a calendar's accessible contents. A calendar can be "populated" with weekend and holiday information via a suite of "add" methods. Any subset of days of the week may be specified as weekend (i.e., recurring non‐business) days starting from a specified date by adding a weekend‐days transition; holidays within the valid range are specified individually. When adding a holiday, an arbitrary integer "holiday code" may be associated with that date. Additional holiday codes for that date may subsequently be added. Both the holidays and the set of unique holiday codes associated with each holiday date are maintained (internally) in order of increasing value. Note that the behavior of requesting _any_ calendar information for a supplied date whose value is outside the current _valid_ _range_ for that calendar (unless otherwise noted, e.g., `isWeekendDay`) is undefined. |=== == Non-Member Functions [cols="1,4"] |=== | Name| Description | xref:BloombergLP/bdlt/operator_inc-097.adoc[`operator++`] | Advance the specified `iterator` to refer to the next business day in the associated calendar, and return the previous value of `iterator`. The behavior is undefined unless, on entry, `iterator` references a valid business day. | xref:BloombergLP/bdlt/operator_dec-05f.adoc[`operator‐‐`] | Regress the specified `iterator` to refer to the previous business day in the associated calendar, and return the previous value of `iterator`. The behavior is undefined unless, on entry, `iterator` references a valid business day that is not the first business day for the associated calendar. |=== [.small]#Created with https://www.mrdocs.com[MrDocs]#