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

Components providing a compact, value&hyphen;semantic bit array&period;

== Types

[cols="1,4"]
|===
| Name| Description
| xref:BloombergLP/bdlc/BitArray.adoc[`BitArray`] 
| Efficient, value&hyphen;semantic contiguous array of boolean (bit) values&period;
| xref:BloombergLP/bdlc/CompactedArray.adoc[`CompactedArray`] 
| Space&hyphen;efficient value&hyphen;semantic array of `TYPE` elements&period;
| xref:BloombergLP/bdlc/CompactedArray_ConstIterator.adoc[`CompactedArray&lowbar;ConstIterator`] 
| Random&hyphen;access const iterator over a `CompactedArray`&period;
| xref:BloombergLP/bdlc/CompactedArray_CountedValue.adoc[`CompactedArray&lowbar;CountedValue`] 
| Reference&hyphen;counted stored value used by `CompactedArray`&period;
| xref:BloombergLP/bdlc/CompactedArray_RemoveAllProctor.adoc[`CompactedArray&lowbar;RemoveAllProctor`] 
| Proctor that invokes `removeAll` on a `CompactedArray` at destruction&period;
| xref:BloombergLP/bdlc/FlatHashMap.adoc[`FlatHashMap`] 
| Unordered map of unique keys to mapped values with open&hyphen;addressed storage&period;
| xref:BloombergLP/bdlc/FlatHashMap_EntryUtil.adoc[`FlatHashMap&lowbar;EntryUtil`] 
| This templated utility provides methods to construct an `ENTRY` and a method to extract the key from an `ENTRY`&period;
| xref:BloombergLP/bdlc/FlatHashSet.adoc[`FlatHashSet`] 
| Unordered set of unique `KEY` values with open&hyphen;addressing storage&period;
| xref:BloombergLP/bdlc/FlatHashSet_EntryUtil.adoc[`FlatHashSet&lowbar;EntryUtil`] 
| This templated utility provides methods to construct an `ENTRY` and a method to extract the key from an `ENTRY` (which is, identically, the `ENTRY`)&period;
| xref:BloombergLP/bdlc/FlatHashTable.adoc[`FlatHashTable`] 
| This class template provides a flat hash table implementation useful for implementing a flat hash set and flat hash map&period;
| xref:BloombergLP/bdlc/FlatHashTable_GroupControl.adoc[`FlatHashTable&lowbar;GroupControl`] 
| This class provides methods for making inquires to the data of a group control loading during construction&period;
| xref:BloombergLP/bdlc/FlatHashTable_IteratorImp.adoc[`FlatHashTable&lowbar;IteratorImp`] 
| Forward iterator implementation for a flat hash table&period;
| xref:BloombergLP/bdlc/HashTable.adoc[`HashTable`] 
| This class implements a double&hyphen;hashed table&period;
| xref:BloombergLP/bdlc/HashTableDefaultHash1.adoc[`HashTableDefaultHash1`] 
| Default first hash functor for `HashTable`&period;
| xref:BloombergLP/bdlc/HashTableDefaultHash2.adoc[`HashTableDefaultHash2`] 
| Default second hash functor for `HashTable`&period;
| xref:BloombergLP/bdlc/HashTableDefaultTraits.adoc[`HashTableDefaultTraits`] 
| Default bucket traits for `HashTable`&period;
| xref:BloombergLP/bdlc/IndexClerk.adoc[`IndexClerk`] 
| Efficient, value&hyphen;semantic manager of reusable, non&hyphen;negative integer indices&period;
| xref:BloombergLP/bdlc/IndexClerkIter.adoc[`IndexClerkIter`] 
| In&hyphen;core value&hyphen;semantic iterator over decommissioned indices of an `IndexClerk`&period;
| xref:BloombergLP/bdlc/PackedIntArray-0b.adoc[`PackedIntArray`] 
| Space&hyphen;efficient value&hyphen;semantic array of packed `TYPE` integers&period;
| xref:BloombergLP/bdlc/PackedIntArrayConstIterator.adoc[`PackedIntArrayConstIterator`] 
| Random&hyphen;access const iterator over a `PackedIntArray`&period;
| xref:BloombergLP/bdlc/PackedIntArrayImp-0a.adoc[`PackedIntArrayImp`] 
| Space&hyphen;efficient value&hyphen;semantic array of packed integer elements&period;
| xref:BloombergLP/bdlc/PackedIntArrayImpType.adoc[`PackedIntArrayImpType`] 
| Meta&hyphen;function selecting the signed or unsigned packed&hyphen;array implementation&period;
| xref:BloombergLP/bdlc/PackedIntArrayImp_Signed.adoc[`PackedIntArrayImp&lowbar;Signed`] 
| Namespace for signed&hyphen;integer packing types and BDEX helpers&period;
| xref:BloombergLP/bdlc/PackedIntArrayImp_Unsigned.adoc[`PackedIntArrayImp&lowbar;Unsigned`] 
| Namespace for unsigned&hyphen;integer packing types and BDEX helpers&period;
| xref:BloombergLP/bdlc/PackedIntArrayUtil.adoc[`PackedIntArrayUtil`] 
| This `struct` provides a namespace for utility functions that provide non&hyphen;primitive operations on `bdlc&colon;&colon;PackedIntArray`&period;
| xref:BloombergLP/bdlc/Queue.adoc[`Queue`] 
| Efficient, in&hyphen;place double&hyphen;ended queue of values of type `T`&period;
|===


== Functions

[cols="1,4"]
|===
| Name| Description
| xref:BloombergLP/bdlc/hashAppend-0f.adoc[`hashAppend`] 
| `hashAppend` overloads
| xref:BloombergLP/bdlc/operator_bitand.adoc[`operator&amp;`] 
| Return the bitwise AND of the specified `lhs` and `rhs` arrays&period;
| xref:BloombergLP/bdlc/operator_plus-04.adoc[`operator&plus;`] 
| Addition operators
| xref:BloombergLP/bdlc/operator_inc-0c.adoc[`operator&plus;&plus;`] 
| Increment operators
| xref:BloombergLP/bdlc/operator_minus-0a4.adoc[`operator&hyphen;`] 
| Subtraction operators
| xref:BloombergLP/bdlc/operator_dec-0a.adoc[`operator&hyphen;&hyphen;`] 
| Decrement operators
| xref:BloombergLP/bdlc/operator_rshift.adoc[`operator&gt;&gt;`] 
| Return `array` right&hyphen;shifted by `numBits`, filling high bits with zeros&period;
| xref:BloombergLP/bdlc/operator_xor.adoc[`operator&circ;`] 
| Return the bitwise XOR of the specified `lhs` and `rhs` arrays&period;
| xref:BloombergLP/bdlc/operator_bitor.adoc[`operator&verbar;`] 
| Return the bitwise OR of the specified `lhs` and `rhs` arrays&period;
| xref:BloombergLP/bdlc/operator_bitnot.adoc[`operator&#126;`] 
| Return the bitwise complement (&quot;toggle&quot;) of the specified `array`&period;
| xref:BloombergLP/bdlc/swap-00f.adoc[`swap`] 
| `swap` overloads
| xref:BloombergLP/bdlc/operator_lshift-0683.adoc[`operator&lt;&lt;`] 
| Left shift operators
| xref:BloombergLP/bdlc/operator_eq-043.adoc[`operator&equals;&equals;`] 
| Equality operators
| xref:BloombergLP/bdlc/operator_not_eq-0e.adoc[`operator!&equals;`] 
| Inequality operators
| xref:BloombergLP/bdlc/operator_lt-0e.adoc[`operator&lt;`] 
| Less&hyphen;than operators
| xref:BloombergLP/bdlc/operator_le-01.adoc[`operator&lt;&equals;`] 
| Less&hyphen;than&hyphen;or&hyphen;equal operators
| xref:BloombergLP/bdlc/operator_gt-06.adoc[`operator&gt;`] 
| Greater&hyphen;than operators
| xref:BloombergLP/bdlc/operator_ge-05.adoc[`operator&gt;&equals;`] 
| Greater&hyphen;than&hyphen;or&hyphen;equal operators
|===



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