Quick Links:

bal | bbl | bdl | bsl

Public Types | Static Public Member Functions

balber::BerUtil_Iso8601ImpUtil Struct Reference

#include <balber_berutil.h>

List of all members.

Public Types

typedef BerUtil_StringImpUtil StringUtil

Static Public Member Functions

static int getDateValue (bdlt::Date *value, bsl::streambuf *streamBuf, int length)
static int getDateTzValue (bdlt::DateTz *value, bsl::streambuf *streamBuf, int length)
static int getDatetimeValue (bdlt::Datetime *value, bsl::streambuf *streamBuf, int length)
static int getDatetimeTzValue (bdlt::DatetimeTz *value, bsl::streambuf *streamBuf, int length)
static int getTimeValue (bdlt::Time *value, bsl::streambuf *streamBuf, int length)
static int getTimeTzValue (bdlt::TimeTz *value, bsl::streambuf *streamBuf, int length)
static int putDateValue (bsl::streambuf *streamBuf, const bdlt::Date &value, const BerEncoderOptions *options)
static int putDateTzValue (bsl::streambuf *streamBuf, const bdlt::DateTz &value, const BerEncoderOptions *options)
static int putDatetimeValue (bsl::streambuf *streamBuf, const bdlt::Datetime &value, const BerEncoderOptions *options)
static int putDatetimeTzValue (bsl::streambuf *streamBuf, const bdlt::DatetimeTz &value, const BerEncoderOptions *options)
static int putTimeValue (bsl::streambuf *streamBuf, const bdlt::Time &value, const BerEncoderOptions *options)
static int putTimeTzValue (bsl::streambuf *streamBuf, const bdlt::TimeTz &value, const BerEncoderOptions *options)

Detailed Description

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.

See Component balber_berutil


Member Typedef Documentation


Member Function Documentation

static int balber::BerUtil_Iso8601ImpUtil::getDateValue ( bdlt::Date value,
bsl::streambuf *  streamBuf,
int  length 
) [static]

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.

static int balber::BerUtil_Iso8601ImpUtil::getDateTzValue ( bdlt::DateTz value,
bsl::streambuf *  streamBuf,
int  length 
) [static]

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.

static int balber::BerUtil_Iso8601ImpUtil::getDatetimeValue ( bdlt::Datetime value,
bsl::streambuf *  streamBuf,
int  length 
) [static]

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.

static int balber::BerUtil_Iso8601ImpUtil::getDatetimeTzValue ( bdlt::DatetimeTz value,
bsl::streambuf *  streamBuf,
int  length 
) [static]

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.

static int balber::BerUtil_Iso8601ImpUtil::getTimeValue ( bdlt::Time value,
bsl::streambuf *  streamBuf,
int  length 
) [static]

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.

static int balber::BerUtil_Iso8601ImpUtil::getTimeTzValue ( bdlt::TimeTz value,
bsl::streambuf *  streamBuf,
int  length 
) [static]

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.

static int balber::BerUtil_Iso8601ImpUtil::putDateValue ( bsl::streambuf *  streamBuf,
const bdlt::Date value,
const BerEncoderOptions options 
) [static]

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.

static int balber::BerUtil_Iso8601ImpUtil::putDateTzValue ( bsl::streambuf *  streamBuf,
const bdlt::DateTz value,
const BerEncoderOptions options 
) [static]

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.

static int balber::BerUtil_Iso8601ImpUtil::putDatetimeValue ( bsl::streambuf *  streamBuf,
const bdlt::Datetime value,
const BerEncoderOptions options 
) [static]

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.

static int balber::BerUtil_Iso8601ImpUtil::putDatetimeTzValue ( bsl::streambuf *  streamBuf,
const bdlt::DatetimeTz value,
const BerEncoderOptions options 
) [static]

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.

static int balber::BerUtil_Iso8601ImpUtil::putTimeValue ( bsl::streambuf *  streamBuf,
const bdlt::Time value,
const BerEncoderOptions options 
) [static]

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.

static int balber::BerUtil_Iso8601ImpUtil::putTimeTzValue ( bsl::streambuf *  streamBuf,
const bdlt::TimeTz value,
const BerEncoderOptions options 
) [static]

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.


The documentation for this struct was generated from the following file: