[#BloombergLP-bdlt-Timetable_Day]
= xref:BloombergLP.adoc[BloombergLP]::xref:BloombergLP/bdlt.adoc[bdlt]::Timetable&lowbar;Day
:relfileprefix: ../../
:mrdocs:

Value&hyphen;semantic repository of time&hyphen;indexed state transitions for one day&period;

== Synopsis

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

[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
class Timetable&lowbar;Day;
----

== Description

This class implements a value&hyphen;semantic repository of time&hyphen;indexed state transitions over one date (this class implements one day of a timetable)&period; A `Timetable&lowbar;Day` can be &quot;populated&quot; with state transitions via the `addTransition` method, and queried for the transition code in effect at a specified time via the `transitionCodeInEffect` method&period; Note that, as an optimization for the `transitionCodeInEffect` method, the transition code in effect before the first possible transition is stored in `d&lowbar;initialTransitionCode`&period;

== Enums

[cols="1,4"]
|===
| Name| Description
| xref:BloombergLP/bdlt/Timetable_Day/_04enum.adoc[`Unnamed enum`] 
| Constants for compactable transition codes&period;
|===


== Member Functions

[cols="1,4"]
|===
| Name| Description
| xref:BloombergLP/bdlt/Timetable_Day/2constructor-09.adoc[`Timetable&lowbar;Day`]         [.small]#[constructor]#
| Constructors
| xref:BloombergLP/bdlt/Timetable_Day/operator_assign.adoc[`operator&equals;`] 
| Assign the value of `rhs` to this daily timetable&period;
| xref:BloombergLP/bdlt/Timetable_Day/addTransition.adoc[`addTransition`] 
| Add or replace a transition at `time` with `code`&period;
| xref:BloombergLP/bdlt/Timetable_Day/finalTransitionCode.adoc[`finalTransitionCode`] 
| Return the transition code in effect at the end of this day&period;
| xref:BloombergLP/bdlt/Timetable_Day/initialTransitionCode.adoc[`initialTransitionCode`] 
| Return the transition code in effect prior to the start of this daily timetable&period;
| xref:BloombergLP/bdlt/Timetable_Day/removeAllTransitions.adoc[`removeAllTransitions`] 
| Remove all transitions from this daily timetable&period;
| xref:BloombergLP/bdlt/Timetable_Day/removeTransition.adoc[`removeTransition`] 
| Remove the transition at `time`, if present&period;
| xref:BloombergLP/bdlt/Timetable_Day/setInitialTransitionCode.adoc[`setInitialTransitionCode`] 
| Set the initial transition code of this daily timetable to `code`&period;
| xref:BloombergLP/bdlt/Timetable_Day/size.adoc[`size`] 
| Return the number of transitions in this daily timetable&period;
| xref:BloombergLP/bdlt/Timetable_Day/transitionCodeInEffect.adoc[`transitionCodeInEffect`] 
| Return the transition code in effect at the specified `time`&period;
|===


== Friends

[cols="1,4"]
|===
| Name| Description
| `xref:BloombergLP/bdlt/hashAppend-068.adoc[BloombergLP::bdlt::hashAppend]`
| Pass `object` to `hashAlg` for modular hashing&period;
| `xref:BloombergLP/bdlt/operator_lt-0c5.adoc[BloombergLP::bdlt::operator&lt;]`
| Return `true` if `lhs` daily timetable is less than `rhs`&period;
| `xref:BloombergLP/bdlt/operator_not_eq-076.adoc[BloombergLP::bdlt::operator!&equals;]`
| Return `true` if `lhs` and `rhs` daily timetables do not have the same value&period;
| `xref:BloombergLP/bdlt/operator_eq-069.adoc[BloombergLP::bdlt::operator&equals;&equals;]`
| Return `true` if `lhs` and `rhs` daily timetables have the same value&period;
| `xref:BloombergLP/bdlt/Timetable_ConstIterator.adoc[BloombergLP::bdlt::Timetable&lowbar;ConstIterator]`
| Provide read&hyphen;only, sequential access in increasing (chronological) order to the transitions in a `Timetable` object&period;
|===


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