[#BloombergLP-bdlt-Timetable_CompactableTransition] = xref:BloombergLP.adoc[BloombergLP]::xref:BloombergLP/bdlt.adoc[bdlt]::Timetable_CompactableTransition :relfileprefix: ../../ :mrdocs: This simply‐constrained attribute class represents a state transition, implemented as a time for when the transition occurs, and a code to indicate the new state. == Synopsis Declared in `<bdlt_timetable.h>` [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- class Timetable_CompactableTransition; ---- == Enums [cols="1"] |=== | Name | xref:BloombergLP/bdlt/Timetable_CompactableTransition/_04enum.adoc[`Unnamed enum`] |=== == Member Functions [cols="1,4"] |=== | Name| Description | xref:BloombergLP/bdlt/Timetable_CompactableTransition/2constructor-07.adoc[`Timetable_CompactableTransition`] [.small]#[constructor]# | Constructors | xref:BloombergLP/bdlt/Timetable_CompactableTransition/operator_assign.adoc[`operator=`] | Assign to this object the value of the specified `rhs` compactable transition, and return a reference providing modifiable access to this object. | xref:BloombergLP/bdlt/Timetable_CompactableTransition/code.adoc[`code`] | Return the code of this compactable transition. | xref:BloombergLP/bdlt/Timetable_CompactableTransition/print.adoc[`print`] | Format this object to the specified output `stream` at the (absolute value of) the optionally specified indentation `level` and return a reference to the modifiable `stream`. If `level` is specified, optionally specify `spacesPerLevel`, the number of spaces per indentation level for this and all of its nested objects. If `level` is negative, suppress indentation of the first line. If `spacesPerLevel` is negative, format the entire output on one line, suppressing all but the initial indentation (as governed by `level`). If `stream` is not valid on entry, this operation has no effect. | xref:BloombergLP/bdlt/Timetable_CompactableTransition/time.adoc[`time`] | Return the time of this compactable transition. |=== == Friends [cols="1,4"] |=== | Name| Description | `xref:BloombergLP/bdlt/Timetable_Day.adoc[BloombergLP::bdlt::Timetable_Day]` | This class implements a value‐semantic repository of time‐indexed state transitions over one date (this class implements one day of a timetable). A `Timetable_Day` can be "populated" with state transitions via the `addTransition` method, and queried for the transition code in effect at a specified time via the `transitionCodeInEffect` method. Note that, as an optimization for the `transitionCodeInEffect` method, the transition code in effect before the first possible transition is stored in `d_initialTransitionCode`. | `xref:BloombergLP/bdlt/Timetable.adoc[BloombergLP::bdlt::Timetable]` | This class implements a value‐semantic repository of datetime‐indexed state transitions over a _valid_ _range_ of dates. This valid range, `[firstDate() .. lastDate()]`, spans the first and last dates of a timetable's accessible contents. A timetable can be "populated" with state transitions via a suite of "add" methods. Note that the behavior of requesting _any_ timetable information for a supplied date whose value is outside the current _valid_ _range_ for that timetable is undefined. |=== == Non-Member Functions [cols="1,4"] |=== | Name| Description | xref:BloombergLP/bdlt/operator_not_eq-07c6.adoc[`operator!=`] | Return `true` if the specified `lhs` and `rhs` compactable transitions do not have the same value, and `false` otherwise. Two compactable transitions do not have the same value if they do not have the same time or the same code. | xref:BloombergLP/bdlt/operator_lt-08a.adoc[`operator<`] | Return `true` if the specified `lhs` has a value less than the specified `rhs`, and `false` otherwise. Compactable transition `lhs` has a value less than time `rhs` if `lhs.time() < rhs`. The behavior is undefined unless `24 > rhs.hour()`. | xref:BloombergLP/bdlt/operator_lt-0b.adoc[`operator<`] | Return `true` if the specified `lhs` has a value less than the specified `rhs`, and `false` otherwise. Compactable transition `lhs` has a value less than compactable transition `rhs` if `lhs.time() < rhs.time()`, or `lhs.time() == rhs.time()` and `lhs.code() < rhs.code()`. | xref:BloombergLP/bdlt/operator_eq-06d.adoc[`operator==`] | Return `true` if the specified `lhs` and `rhs` compactable transitions have the same value, and `false` otherwise. Two compactable transitions have the same value if they have the same time and code. |=== [.small]#Created with https://www.mrdocs.com[MrDocs]#