Datum | This class implements a mechanism that provides a space-efficient discriminated union that holds the value of ether scalar type or an aggregate of Datum objects. The size of Datum is 8 bytes (same as a double) on 32-bit platforms and 16 bytes on 64-bit platforms. Separate representation are needed on 32 and 64 bit platforms because of the differing size of a pointer (a 64-bit pointer cannot reasonably be held in a 32-bit footprint). |
DatumArrayBuilder | This class provides a mechanism to build a Datum object having an array value in an exception-safe manner. |
DatumArrayRef | This class provides a read-only view to an array of datums. It holds the array by a const pointer and an integral length value. It acts as return value for accessors inside the Datum class that return an array of datums. Note that zero-length arrays are valid. |
DatumBinaryRef | This class provides a type to represent a pointer to non-modifiable binary data and an integral size value. |
DatumError | This component class provides a complex constrained attribute type, bdld::DatumError, that represents an error code with an optional descriptive error message. Note that this class holds a reference to the error message and does not make a copy of it. |
DatumIntMapBuilder | This class provides a mechanism to build a Datum object having an int-map value in an exception-safe manner. See bdld_datum for more information about integer maps. |
DatumIntMapEntry | This class represents an entry in a datum map keyed by string values. |
DatumIntMapRef | This class provides a read-only view to a map of datums (an array of DatumIntMapEntry objects). It holds the array by a const pointer and an integral size value. It acts as return value for accessors inside the Datum class that return a map of Datum objects. Note that zero-size maps are valid. |
DatumMaker | This concrete mechanism class provides "sugar" for easily creating bdld::Datum objects for testing. |
DatumMapBuilder | This class provides a mechanism to build a Datum object having a map value in an exception-safe manner. |
DatumMapEntry | This class represents an entry in a datum map keyed by string values. |
DatumMapOwningKeysBuilder | This class provides a mechanism to build a Datum object having a map (owning keys) value in an exception-safe manner. |
DatumMapRef | This class provides a read-only view to a map of datums (an array of DatumMapEntry objects). It holds the array by a const pointer and an integral size value. It acts as return value for accessors inside the Datum class that return a map of Datum objects. Note that zero-size maps are valid. |
DatumMutableArrayRef | This class provides mutable access to a datum array. The users of this class can read from and assign to the individual elements as well as change the length of the array. |
DatumMutableIntMapRef | This class provides a mutable access to a datum int-map. The users of this class can assign to the individual elements and also change the size of the map. |
DatumMutableMapOwningKeysRef | This class provides mutable access to a datum key-owning map. The users of this class can assign to the individual elements, copy keys and change the size of the map. |
DatumMutableMapRef | This class provides a mutable access to a datum map. The users of this class can assign to the individual elements and also change the size of the map. |
DatumUdt | This class provides a type to represent a pointer to an object of some user-defined type and an integer value denoting what actual type is represented. |
DatumUtil | This struct serves as a namespace for utility functions that operate on bdld::Datum objects. |
Datum_Helpers | This struct contains helper functions used to access typed objects within a buffer. The functions assume that objects within the buffers have proper alignment and use casts to suppress compiler warnings about possible alignment problems. |
Datum_IntMapHeader | This component-local class provides a layout of the meta-information stored in front of the Datum int-maps. |
Datum_MakeDependent | Metafunction for use in templates to create a dependent type that is identical to the t_WANT_TO_BE_DEPENDENT type specified as first template argument using the t_ALREADY_DEPENDENT type of the user template (of this metafunction). |
Datum_MapHeader | This component-local class provides a layout of the meta-information stored in front of the Datum maps. |
ManagedDatum | This class implements a smart-pointer-like resource manager for a Datum object. |