Skip to content

BDE 2.23 Release Notes

Mike Verschell edited this page Jun 3, 2015 · 2 revisions

05/22/2015 BDE 2.23: Production

The BDE 2.23 release branch has pushed to github.

Release Details

BDLT Date and Time Types

BDE 2.23.0 introduces the open-source date and time types in the library bdlt. This includes a series of vocabulary types for describing dates and times (e.g., bdlt::Date, bdlt::Time, bdlt::Datetime) as well as a series of utilities for manipulating and creating date and time values (e.g., bsls::SystemTime, bdlt::CurrentTime, bdlt::DateUtil).

GUID Support

Support for Globally Unique Identifiers (GUIDs, version 4 per RFC 4122) have been added to the bdlb package. The two new components, bdlb_guid and bdlb_guidutil, allow callers to represent and generate these unique 128-bit values.

BSLX

The bslx package is a successor to bdex. The new package also supports the BDEX concept (i.e., one can bslx stream classes with bdexStreamIn and bdexStreamOut methods), and the resulting wire-formats are compatible with those from bdex. The new package provies safer handling for versioning of streaming operators.

Added Types: bsl::ref, bsl::cref, and bsl::reference_wrapper

BDE 2.23 introduces the type bsl::reference_wrapper, and the functions bsl::ref and bsl::cref. These provide a partial implementation of those C++11 types.

  • Now Supported: The storage of references within functors (e.g., bdef_Function) and containers (e.g., bsl::vector).

  • Not Yet Supported: Callable references to functors and functions.

bdlc_packedintarray

A new component, bdlc_packedintarray provides a space efficient value-semantic array of integral values. The implementation is designed to reduce dynamic memory usage by storing its contents differently according to the magnitude of values placed within it.

bsl::hashAppend for bsl::pair

BDE 2.23.0 provides an implementation of bsl::hashAppend, and by extension bsl::hash, for bsl::pair.

bdlma_localsequentialallocator

The new component, bdlma_localsequentialallocator, simplifies the creation of a stack-aligned buffered-sequential allocator.