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

Namespace for static bit&hyphen;manipulation helpers used by `BitStringUtil`&period;

== Synopsis

Declared in `&lt;bdlb&lowbar;bitstringimputil&period;h&gt;`

[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
struct BitStringImpUtil;
----

== Description

This `struct` provides a namespace for static functions to be used solely in the implementation of `BitStringUtil`&period; The &quot;Manipulators&quot; are intended to be provided as arguments to templates in `bdlb&lowbar;bitstringutil`, whereas the &quot;Accessors&quot; are to be called directly within that component&period;

== Enums

[cols="1,4"]
|===
| Name| Description
| xref:BloombergLP/bdlb/BitStringImpUtil/_04enum.adoc[`Unnamed enum`] 
| Number of bits in a `uint64&lowbar;t`&period;
|===


== Static Member Functions

[cols="1,4"]
|===
| Name| Description
| xref:BloombergLP/bdlb/BitStringImpUtil/andEqBits.adoc[`andEqBits`] 
| Bitwise AND `numBits` of `srcValue` into those in `&ast;dstValue`&period;
| xref:BloombergLP/bdlb/BitStringImpUtil/andEqWord.adoc[`andEqWord`] 
| Assign to `&ast;dstValue` the value of `&ast;dstValue` bitwise AND&hyphen;ed with `srcValue`&period;
| xref:BloombergLP/bdlb/BitStringImpUtil/find1AtMaxIndexRaw.adoc[`find1AtMaxIndexRaw`] 
| Return the index of the highest&hyphen;order set bit in a non&hyphen;zero value&period;
| xref:BloombergLP/bdlb/BitStringImpUtil/find1AtMinIndexRaw.adoc[`find1AtMinIndexRaw`] 
| Return the index of the lowest&hyphen;order set bit in a non&hyphen;zero value&period;
| xref:BloombergLP/bdlb/BitStringImpUtil/minusEqBits.adoc[`minusEqBits`] 
| Bitwise MINUS `numBits` of `srcValue` from those in `&ast;dstValue`&period;
| xref:BloombergLP/bdlb/BitStringImpUtil/minusEqWord.adoc[`minusEqWord`] 
| Assign to `&ast;dstValue` the value of `&ast;dstValue` bitwise AND&hyphen;ed with the complement of `srcValue`&period;
| xref:BloombergLP/bdlb/BitStringImpUtil/orEqBits.adoc[`orEqBits`] 
| Bitwise OR `numBits` of `srcValue` into those in `&ast;dstValue`&period;
| xref:BloombergLP/bdlb/BitStringImpUtil/orEqWord.adoc[`orEqWord`] 
| Assign to `&ast;dstValue` the value of `&ast;dstValue` bitwise OR&hyphen;ed with `srcValue`&period;
| xref:BloombergLP/bdlb/BitStringImpUtil/setEqBits.adoc[`setEqBits`] 
| Replace `numBits` in `&ast;dstValue` with the low&hyphen;order bits of `srcValue`&period;
| xref:BloombergLP/bdlb/BitStringImpUtil/setEqWord.adoc[`setEqWord`] 
| Assign to `&ast;dstValue` the value of `srcValue`&period;
| xref:BloombergLP/bdlb/BitStringImpUtil/xorEqBits.adoc[`xorEqBits`] 
| Bitwise XOR `numBits` of `srcValue` into those in `&ast;dstValue`&period;
| xref:BloombergLP/bdlb/BitStringImpUtil/xorEqWord.adoc[`xorEqWord`] 
| Assign to `&ast;dstValue` the value of `&ast;dstValue` bitwise XOR&hyphen;ed with `srcValue`&period;
|===



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