[#BloombergLP-bdld-DatumMapOwningKeysBuilder]
= xref:BloombergLP.adoc[BloombergLP]::xref:BloombergLP/bdld.adoc[bdld]::DatumMapOwningKeysBuilder
:relfileprefix: ../../
:mrdocs:

This `class` provides a mechanism to build a `Datum` object having a map (owning keys) value in an exception&hyphen;safe manner&period;

== Synopsis

Declared in `&lt;bdld&lowbar;datummapowningkeysbuilder&period;h&gt;`

[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
class DatumMapOwningKeysBuilder;
----

== Type Aliases

[cols="1,4"]
|===
| Name| Description
| xref:BloombergLP/bdld/DatumMapOwningKeysBuilder/SizeType.adoc[`SizeType`] 
| `SizeType` is an alias for a signed value, representing the capacity, _keys&hyphen;capacity_, size or _keys&hyphen;size_ of a datum&hyphen;key&hyphen;owning map&period;
| xref:BloombergLP/bdld/DatumMapOwningKeysBuilder/allocator_type.adoc[`allocator&lowbar;type`] 
| Allocator type used by this builder&period;
|===


== Member Functions

[cols="1,4"]
|===
| Name| Description
| xref:BloombergLP/bdld/DatumMapOwningKeysBuilder/2constructor-04.adoc[`DatumMapOwningKeysBuilder`]         [.small]#[constructor]#
| Constructors
| xref:BloombergLP/bdld/DatumMapOwningKeysBuilder/2destructor.adoc[`&#126;DatumMapOwningKeysBuilder`] [.small]#[destructor]#
| Destroy this object&period;
| xref:BloombergLP/bdld/DatumMapOwningKeysBuilder/allocator.adoc[`allocator`] 
| Return `get&lowbar;allocator()&period;mechanism()`&period;
| xref:BloombergLP/bdld/DatumMapOwningKeysBuilder/append.adoc[`append`] 
| Append the specified array `entries` having the specified `size`&period;
| xref:BloombergLP/bdld/DatumMapOwningKeysBuilder/capacity.adoc[`capacity`] 
| Return the capacity of the held `Datum` map (owning keys)&period;
| xref:BloombergLP/bdld/DatumMapOwningKeysBuilder/commit.adoc[`commit`] 
| Return a `Datum` map (owning keys) of the appended elements&period;
| xref:BloombergLP/bdld/DatumMapOwningKeysBuilder/get_allocator.adoc[`get&lowbar;allocator`] 
| Return the allocator used by this object to supply memory&period;
| xref:BloombergLP/bdld/DatumMapOwningKeysBuilder/keysCapacity.adoc[`keysCapacity`] 
| Return the keys&hyphen;capacity of the held `Datum` map (owning keys)&period;
| xref:BloombergLP/bdld/DatumMapOwningKeysBuilder/pushBack.adoc[`pushBack`] 
| Append the entry with the specified `key` and `value`&period;
| xref:BloombergLP/bdld/DatumMapOwningKeysBuilder/setSorted.adoc[`setSorted`] 
| Mark the map being built as sorted according to the specified `value`&period;
| xref:BloombergLP/bdld/DatumMapOwningKeysBuilder/size.adoc[`size`] 
| Return the size of the held `Datum` map (owning keys)&period; The behavior is undefined if `commit` or `sortAndCommit` has already been called on this object&period;
| xref:BloombergLP/bdld/DatumMapOwningKeysBuilder/sortAndCommit.adoc[`sortAndCommit`] 
| Return a key&hyphen;sorted `Datum` map (owning keys) of the appended elements&period;
| xref:BloombergLP/bdld/DatumMapOwningKeysBuilder/2conversion.adoc[`operator BloombergLP::bslmf::NestedTraitDeclaration&lt;DatumMapOwningKeysBuilder, UsesBslmaAllocator&gt;`] 
| `DatumMapOwningKeysBuilder` is allocator&hyphen;aware&period;
|===



[.small]#Created with https://www.mrdocs.com[MrDocs]#
