BloombergLP::balber::BerUtil_DateImpUtil

Utilities for BER date encoding and decoding.

Synopsis

Declared in <balber_berutil.h>

struct BerUtil_DateImpUtil;

Description

This component-private struct provides a namespace for a suite of functions used by BerUtil to implement BER encoding and decoding operations for date values. Within the definition of this struct:

* the specification: > Refers to the August 2015 revision of the ITU-T Recommendation X.690.

* the default set of options: > Refers to a balber::BerEncoderOptions value having a > datetimeFractionalSecondPrecision attribute of 3 and a > encodeDateAndTimeTypesAsBinary attribute of false.

See the package level documentation of balber for a definition of the compact and extended binary formats for date and time values.

Type Aliases

NameDescription
DateAndTimeHeaderUtil Alias for extended-binary date-and-time header utilities.
DateEncoding DateEncoding is an alias to a namespace for enumerating the set of formats that may be used by BerUtil to encode and decode values of bdlt::Date type.
DateOrDateTz DateOrDateTz is a convenient alias for bdlb::Variant2<bdlt::Date, bdlt::DateTz>.
DateOrDateTzEncoding Alias for date-or-date-tz encoding format enumerations.
DateTzEncoding DateEncoding is an alias to a namespace for enumerating the set of formats that may be used by BerUtil to encode and decode values of bdlt::DateTz type.
IntegerUtil IntegerUtil is an alias to a namespace for a suite of functions used to implement BER encoding and decoding operations for integer values.
Iso8601Util Alias for ISO 8601 date and time encoding utilities.
LengthUtil LengthUtil is an alias to a namespace for a suite of functions used to implement BER encoding and decoding operations for length quantities.
StreambufUtil StreambufUtil is an alias to a namespace for a suite of functions used to implement input and output operations on bsl::streambuf objects.
StringUtil StringUtil is an alias to a namespace for a suite of functions used by BerUtil to implement BER encoding and decoding operations for string values.
TimezoneUtil TimezoneUtil is an alias to a namespace for a suite of functions used to implement BER encoding and decoding operations for time-zone offset values.

Enums

NameDescription
Unnamed enum Epoch constants for compact-binary date encoding.

Static Member Functions

NameDescription
dateToDaysSinceEpoch Convert a date to days relative to the compact-binary date epoch.
daysSinceEpochToDate Load to the specified date the date represented by the serial date indicated by adding the specified daysSinceEpoch to k_COMPACT_BINARY_DATE_EPOCH.
getDateOrDateTzValue Read the specified length number of bytes from the input sequence of the specified streamBuf and load to the specified value the date and optional time.
getDateTzValue Decode a bdlt::DateTz value from streamBuf.
getDateValue Decode a bdlt::Date value from streamBuf.
putDateTzValue Encode a bdlt::DateTz value to streamBuf.
putDateValue Encode a bdlt::Date value to streamBuf.