[#BloombergLP-balber-BerUtil_Iso8601ImpUtil] = xref:BloombergLP.adoc[BloombergLP]::xref:BloombergLP/balber.adoc[balber]::BerUtil_Iso8601ImpUtil :relfileprefix: ../../ :mrdocs: This component‐private utility `struct` provides a namespace for a suite of functions used by `BerUtil` to implement BER encoding and decoding operations for date and time values in the ISO 8601 format. See the component‐level documentation of {`bdlt_iso8601util`} for a complete description of the ISO 8601 format used by the functions provided by this `struct`. == Synopsis Declared in `<balber_berutil.h>` [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- struct BerUtil_Iso8601ImpUtil; ---- == Type Aliases [cols="1,4"] |=== | Name| Description | xref:BloombergLP/balber/BerUtil_Iso8601ImpUtil/StringUtil.adoc[`StringUtil`] | `StringUtil` is an alias to a namespace for a suite of functions used to implement BER encoder and decoding operations for string values. |=== == Static Member Functions [cols="1,4"] |=== | Name| Description | xref:BloombergLP/balber/BerUtil_Iso8601ImpUtil/getDateTzValue.adoc[`getDateTzValue`] | Read the specified `length` number of bytes from the input sequence of the specified `streamBuf` and load to the specified `value` the date value represented by the interpretation of the read bytes as an ISO 8601 date and time zone. Return 0 on success, and a non‐zero value otherwise. The operation succeeds if `length` bytes are successfully read from the input sequence of the `streamBuf` without the read position becoming unavailable, and the bytes contain a valid representation of an ISO 8601 date and time zone. | xref:BloombergLP/balber/BerUtil_Iso8601ImpUtil/getDateValue.adoc[`getDateValue`] | Read the specified `length` number of bytes from the input sequence of the specified `streamBuf` and load to the specified `value` the date value represented by the interpretation of the read bytes as an ISO 8601 date. Return 0 on success, and a non‐zero value otherwise. The operation succeeds if `length` bytes are successfully read from the input sequence of the `streamBuf` without the read position becoming unavailable, and the bytes contain a valid representation of an ISO 8601 date. | xref:BloombergLP/balber/BerUtil_Iso8601ImpUtil/getDatetimeTzValue.adoc[`getDatetimeTzValue`] | Read the specified `length` number of bytes from the input sequence of the specified `streamBuf` and load to the specified `value` the date value represented by the interpretation of the read bytes as an ISO 8601 date, time, and time zone. Return 0 on success, and a non‐zero value otherwise. The operation succeeds if `length` bytes are successfully read from the input sequence of the `streamBuf` without the read position becoming unavailable, and the bytes contain a valid representation of an ISO 8601 date, time, and time zone. | xref:BloombergLP/balber/BerUtil_Iso8601ImpUtil/getDatetimeValue.adoc[`getDatetimeValue`] | Read the specified `length` number of bytes from the input sequence of the specified `streamBuf` and load to the specified `value` the date value represented by the interpretation of the read bytes as an ISO 8601 date and time. Return 0 on success, and a non‐zero value otherwise. The operation succeeds if `length` bytes are successfully read from the input sequence of the `streamBuf` without the read position becoming unavailable, and the bytes contain a valid representation of an ISO 8601 date and time. | xref:BloombergLP/balber/BerUtil_Iso8601ImpUtil/getTimeTzValue.adoc[`getTimeTzValue`] | Read the specified `length` number of bytes from the input sequence of the specified `streamBuf` and load to the specified `value` the date value represented by the interpretation of the read bytes as an ISO 8601 time and time zone. Return 0 on success, and a non‐zero value otherwise. The operation succeeds if `length` bytes are successfully read from the input sequence of the `streamBuf` without the read position becoming unavailable, and the bytes contain a valid representation of an ISO 8601 time and time zone. | xref:BloombergLP/balber/BerUtil_Iso8601ImpUtil/getTimeValue.adoc[`getTimeValue`] | Read the specified `length` number of bytes from the input sequence of the specified `streamBuf` and load to the specified `value` the date value represented by the interpretation of the read bytes as an ISO 8601 time. Return 0 on success, and a non‐zero value otherwise. The operation succeeds if `length` bytes are successfully read from the input sequence of the `streamBuf` without the read position becoming unavailable, and the bytes contain a valid representation of an ISO 8601 time. | xref:BloombergLP/balber/BerUtil_Iso8601ImpUtil/putDateTzValue.adoc[`putDateTzValue`] | Write the ISO 8601 representation of the specified `value` to the output sequence of the specified `streamBuf`. Return 0 on success and a non‐zero value otherwise. The operation succeeds if all bytes of the ISO 8601 representation of the `value` are written to the `streamBuf` without the write position becoming unavailable. | xref:BloombergLP/balber/BerUtil_Iso8601ImpUtil/putDateValue.adoc[`putDateValue`] | Write the ISO 8601 representation of the specified `value` to the output sequence of the specified `streamBuf`. Return 0 on success and a non‐zero value otherwise. The operation succeeds if all bytes of the ISO 8601 representation of the `value` are written to the `streamBuf` without the write position becoming unavailable. | xref:BloombergLP/balber/BerUtil_Iso8601ImpUtil/putDatetimeTzValue.adoc[`putDatetimeTzValue`] | Write the ISO 8601 representation of the specified `value` to the output sequence of the specified `streamBuf`. If the specified `options` is 0, use 3 decimal places of fractional second precision, otherwise use the number of decimal places specified by the `datetimeFractionalSecondPrecision` attribute of the `options`. Return 0 on success and a non‐zero value otherwise. The operation succeeds if all bytes of the ISO 8601 representation of the `value` are written to the `streamBuf` without the write position becoming unavailable. | xref:BloombergLP/balber/BerUtil_Iso8601ImpUtil/putDatetimeValue.adoc[`putDatetimeValue`] | Write the ISO 8601 representation of the specified `value` to the output sequence of the specified `streamBuf`. If the specified `options` is 0, use 3 decimal places of fractional second precision, otherwise use the number of decimal places specified by the `datetimeFractionalSecondPrecision` attribute of the `options`. Return 0 on success and a non‐zero value otherwise. The operation succeeds if all bytes of the ISO 8601 representation of the `value` are written to the `streamBuf` without the write position becoming unavailable. | xref:BloombergLP/balber/BerUtil_Iso8601ImpUtil/putTimeTzValue.adoc[`putTimeTzValue`] | Write the ISO 8601 representation of the specified `value` to the output sequence of the specified `streamBuf`. If the specified `options` is 0, use 3 decimal places of fractional second precision, otherwise use the number of decimal places specified by the `datetimeFractionalSecondPrecision` attribute of the `options`. Return 0 on success and a non‐zero value otherwise. The operation succeeds if all bytes of the ISO 8601 representation of the `value` are written to the `streamBuf` without the write position becoming unavailable. | xref:BloombergLP/balber/BerUtil_Iso8601ImpUtil/putTimeValue.adoc[`putTimeValue`] | Write the ISO 8601 representation of the specified `value` to the output sequence of the specified `streamBuf`. If the specified `options` is 0, use 3 decimal places of fractional second precision, otherwise use the number of decimal places specified by the `datetimeFractionalSecondPrecision` attribute of the `options`. Return 0 on success and a non‐zero value otherwise. The operation succeeds if all bytes of the ISO 8601 representation of the `value` are written to the `streamBuf` without the write position becoming unavailable. |=== [.small]#Created with https://www.mrdocs.com[MrDocs]#