[#BloombergLP-bdlt-operator_dec-0a]
= xref:BloombergLP.adoc[BloombergLP]::xref:BloombergLP/bdlt.adoc[bdlt]::operator&hyphen;&hyphen;
:relfileprefix: ../../
:mrdocs:

Decrement operators

== Synopses

Declared in `&lt;bdlt&lowbar;calendar&period;h&gt;`

Regress the specified `iterator` to refer to the previous business day in the associated calendar, and return the previous value of `iterator`&period; The behavior is undefined unless, on entry, `iterator` references a valid business day that is not the first business day for the associated calendar&period;


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
xref:BloombergLP/bdlt/Calendar_BusinessDayConstIter.adoc[Calendar&lowbar;BusinessDayConstIter]
xref:BloombergLP/bdlt/operator_dec-052.adoc[operator&hyphen;&hyphen;](
    xref:BloombergLP/bdlt/Calendar_BusinessDayConstIter.adoc[Calendar&lowbar;BusinessDayConstIter]& iterator,
    int);
----

[.small]#xref:BloombergLP/bdlt/operator_dec-052.adoc[_» more&period;&period;&period;_]#

Set the specified `date` object to have the value that is one day earlier than its current value, and return the value of `date` on entry&period; The behavior is undefined if the value of `date` on entry is `0001&sol;01&sol;01`&period;


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
xref:BloombergLP/bdlt/Date.adoc[bdlt::Date]
xref:BloombergLP/bdlt/operator_dec-01.adoc[operator&hyphen;&hyphen;](
    xref:BloombergLP/bdlt/Date.adoc[Date]& date,
    int);
----

[.small]#xref:BloombergLP/bdlt/operator_dec-01.adoc[_» more&period;&period;&period;_]#

Regress the specified `iterator` to refer to the previous business day in the associated calendar, and return the previous value of `iterator`&period; The behavior is undefined unless, on entry, `iterator` references a valid business day that is not the first business day for the associated calendar&period;


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
xref:BloombergLP/bdlt/PackedCalendar_BusinessDayConstIterator.adoc[bdlt::PackedCalendar&lowbar;BusinessDayConstIterator]
xref:BloombergLP/bdlt/operator_dec-05f.adoc[operator&hyphen;&hyphen;](
    xref:BloombergLP/bdlt/PackedCalendar_BusinessDayConstIterator.adoc[PackedCalendar&lowbar;BusinessDayConstIterator]& iterator,
    int);
----

[.small]#xref:BloombergLP/bdlt/operator_dec-05f.adoc[_» more&period;&period;&period;_]#

Regress the specified `iterator` to refer to the previous holiday code for the associated date in the associated calendar, and return the previous value of `iterator`&period; The behavior is undefined unless, on entry, `iterator` references a valid holiday code that is not the first holiday code for the associated date in the calendar&period;


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
xref:BloombergLP/bdlt/PackedCalendar_HolidayCodeConstIterator.adoc[bdlt::PackedCalendar&lowbar;HolidayCodeConstIterator]
xref:BloombergLP/bdlt/operator_dec-02.adoc[operator&hyphen;&hyphen;](
    xref:BloombergLP/bdlt/PackedCalendar_HolidayCodeConstIterator.adoc[PackedCalendar&lowbar;HolidayCodeConstIterator]& iterator,
    int);
----

[.small]#xref:BloombergLP/bdlt/operator_dec-02.adoc[_» more&period;&period;&period;_]#

Regress the specified `iterator` to refer to the previous holiday in the associated calendar, and return the previous value of `iterator`&period; The behavior is undefined unless, on entry, `iterator` references a valid holiday that is not the first holiday in the associated calendar&period;


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
xref:BloombergLP/bdlt/PackedCalendar_HolidayConstIterator.adoc[bdlt::PackedCalendar&lowbar;HolidayConstIterator]
xref:BloombergLP/bdlt/operator_dec-0e.adoc[operator&hyphen;&hyphen;](
    xref:BloombergLP/bdlt/PackedCalendar_HolidayConstIterator.adoc[PackedCalendar&lowbar;HolidayConstIterator]& iterator,
    int);
----

[.small]#xref:BloombergLP/bdlt/operator_dec-0e.adoc[_» more&period;&period;&period;_]#

Regress the specified `iterator` to refer to the previous transition in the referenced timetable, and return an iterator referring to the original element (_before_ the decrementation)&period; The behavior is undefined unless, on entry, `iterator` references a valid transition that is not the first transition of the associated timetable&period;


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
xref:BloombergLP/bdlt/Timetable_ConstIterator.adoc[bdlt::Timetable&lowbar;ConstIterator]
xref:BloombergLP/bdlt/operator_dec-0b.adoc[operator&hyphen;&hyphen;](
    xref:BloombergLP/bdlt/Timetable_ConstIterator.adoc[Timetable&lowbar;ConstIterator]& iterator,
    int);
----

[.small]#xref:BloombergLP/bdlt/operator_dec-0b.adoc[_» more&period;&period;&period;_]#

Modify the specified `iterator` to refer to the previous element in the reverse iteration sequence, and return a reverse iterator having the pre&hyphen;decrement value of `iterator`&period; The behavior is undefined unless, on entry, `iterator` does not have the same value as a reverse iterator to the start of the underlying sequence&period;


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
template&lt;class ITERATOR&gt;
xref:BloombergLP/bdlt/CalendarReverseIteratorAdapter.adoc[bdlt::CalendarReverseIteratorAdapter&lt;ITERATOR&gt;]
xref:BloombergLP/bdlt/operator_dec-04.adoc[operator&hyphen;&hyphen;](
    xref:BloombergLP/bdlt/CalendarReverseIteratorAdapter.adoc[CalendarReverseIteratorAdapter&lt;ITERATOR&gt;]& iterator,
    int);
----

[.small]#xref:BloombergLP/bdlt/operator_dec-04.adoc[_» more&period;&period;&period;_]#


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