BDE 4.14.0 Production release
|
#include <baltzo_localtimeperiod.h>
Public Types | |
typedef bsl::allocator< char > | allocator_type |
Static Public Member Functions | |
static bool | isValidUtcStartAndEndTime (const bdlt::Datetime &utcStartTime, const bdlt::Datetime &utcEndTime) |
This complex-constrained (value-semantic) attribute class describes a range of time in which a particular local time description (offset, DST status, and a descriptive string) is in effect. See the Attributes section for information on the class attributes. Note that the class invariants are identically the constraints on the attributes.
typedef bsl::allocator<char> baltzo::LocalTimePeriod::allocator_type |
|
inline |
|
inlineexplicit |
Create a LocalTimePeriod
object having the (default) attribute values:
Optionally specify an allocator
(e.g., the address of a bslma::Allocator
object) to supply memory; otherwise, the default allocator is used.
|
inline |
Create a LocalTimePeriod
object having the specified descriptor
, utcStartTime
, and utcEndTime
attribute values. Optionally specify an allocator
(e.g., the address of a bslma::Allocator
object) to supply memory; otherwise, the default allocator is used. The behavior is undefined unless utcStartTime == utcEndTime
, or if utcStartTime
and utcEndTime
are comparable (i.e., neither equals the a default constructed bdlt::DateTime
object) unless utcStartTime < utcEndTime
. (See the isValidUtcStartAndEndTime
method.)
|
inline |
Create a LocalTimePeriod
object with the same value as the specified original
object. Optionally specify an allocator
(e.g., the address of a bslma::Allocator
object) to supply memory; otherwise, the default allocator is used.
|
inline |
Create a LocalTimePeriod
object having the same value and the same allocator as the specified original
object. The value of original
becomes unspecified but valid, and its allocator remains unchanged.
|
inline |
Create a LocalTimePeriod
object having the same value as the specified original
object, using the specified allocator
(e.g., the address of a bslma::Allocator
object) to supply memory. The allocator of original
remains unchanged. If original
and the newly created object have the same allocator then the value of original
becomes unspecified but valid, and no exceptions will be thrown; otherwise original
is unchanged and an exception may be thrown.
|
inline |
|
inline |
Return get_allocator().mechanism()
.
@DEPRECATED Use get_allocator()
instead.
baltzo::LocalTimePeriod::BSLMF_NESTED_TRAIT_DECLARATION | ( | LocalTimePeriod | , |
bslma::UsesBslmaAllocator | |||
) |
baltzo::LocalTimePeriod::BSLMF_NESTED_TRAIT_DECLARATION | ( | LocalTimePeriod | , |
bslmf::IsBitwiseMoveable | |||
) |
|
inline |
Return a reference providing non-modifiable access to the descriptor
attribute of this object.
|
inline |
Return the allocator used by this object to supply memory. Note that if no allocator was supplied at construction the default allocator in effect at construction is used.
|
inlinestatic |
Return true
if the specified utcStartTime
and utcEndTime
have the same value, or if utcStartTime
and utcEndTime
are comparable (i.e., neither has the value of a default-constructed bdlt::DateTime
object) and utcStartTime < utcEndTime
; return false
otherwise.
|
inline |
Assign to this object the value of the specified rhs
object, and return a non-const
reference to this object. The allocators of this object and rhs
both remain unchanged. If rhs
and this object have the same allocator then the value of rhs
becomes unspecified but valid, and no exceptions will be thrown; otherwise rhs
is unchanged (and an exception may be thrown).
|
inline |
Assign to this object the value of the specified rhs
object, and return a reference providing modifiable access to this object.
bsl::ostream & baltzo::LocalTimePeriod::print | ( | bsl::ostream & | stream, |
int | level = 0 , |
||
int | spacesPerLevel = 4 |
||
) | const |
Write the value of this object to the specified output stream
in a human-readable format, and return a reference to stream
. Optionally specify an initial indentation level
, whose absolute value is incremented recursively for nested objects. If level
is specified, optionally specify spacesPerLevel
, whose absolute value indicates 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. Note that the format is not fully specified, and can change without notice.
|
inline |
|
inline |
Use the specified utcStartTime
and utcEndTime
to set the utcStartTime
and utcEndTime
attributes of this object respectively. The behavior is undefined unless utcStartTime == utcEndTime
, or if utcStartTime
and utcEndTime
are comparable (i.e., neither equals a default constructed bdlt::DateTime
object) unless utcStartTime < utcEndTime
. (See the isValidUtcStartAndEndTime
method.)
|
inline |
Efficiently exchange the value of this object with the value of the specified other
object. This method provides the no-throw exception-safety guarantee. The behavior is undefined unless this object was created with the same allocator as other
.
|
inline |
Return a reference providing non-modifiable access to the utcEndTime
attribute of this object.
|
inline |
Return a reference providing non-modifiable access to the utcStartTime
attribute of this object.