[#BloombergLP-bdlc-operator_lshift-0683]
= xref:BloombergLP.adoc[BloombergLP]::xref:BloombergLP/bdlc.adoc[bdlc]::operator&lt;&lt;
:relfileprefix: ../../
:mrdocs:

Left shift operators

== Synopses

Declared in `&lt;bdlc&lowbar;bitarray&period;h&gt;`

Write the value of the specified `array` to the specified output `stream` in a single&hyphen;line format, and return a reference providing modifiable access to `stream`&period; If `stream` is not valid on entry, this operation has no effect&period; Note that this human&hyphen;readable format is not fully specified and can change without notice&period;


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
template&lt;class TYPE&gt;
std::ostream&
xref:BloombergLP/bdlc/operator_lshift-00.adoc[operator&lt;&lt;](
    std::ostream& stream,
    xref:BloombergLP/bdlc/PackedIntArray-0b.adoc[PackedIntArray&lt;TYPE&gt;] const& array);
----

[.small]#xref:BloombergLP/bdlc/operator_lshift-00.adoc[_» more&period;&period;&period;_]#

Return the value of the specified `array` left&hyphen;shifted by the specified `numBits` positions, having filled the lower&hyphen;index positions with zeros&period; The behavior is undefined unless `numBits &lt;&equals; array&period;length()`&period; Note that the length of the result equals the length of the original array, and that the highest&hyphen;order `numBits` are discarded in the result&period;


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
xref:BloombergLP/bdlc/BitArray.adoc[bdlc::BitArray]
xref:BloombergLP/bdlc/operator_lshift-0688.adoc[operator&lt;&lt;](
    xref:BloombergLP/bdlc/BitArray.adoc[BitArray] const& array,
    std::size&lowbar;t numBits);
----

[.small]#xref:BloombergLP/bdlc/operator_lshift-0688.adoc[_» more&period;&period;&period;_]#

Format the bits in the specified `rhs` bit array to the specified output `stream` in a single&hyphen;line format, and return a reference to `stream`&period;


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
std::ostream&
xref:BloombergLP/bdlc/operator_lshift-0f.adoc[operator&lt;&lt;](
    std::ostream& stream,
    xref:BloombergLP/bdlc/BitArray.adoc[BitArray] const& rhs);
----

[.small]#xref:BloombergLP/bdlc/operator_lshift-0f.adoc[_» more&period;&period;&period;_]#

Write the value of the specified `array` to the specified output `stream` in a single&hyphen;line format, and return a reference providing modifiable access to `stream`&period; If `stream` is not valid on entry, this operation has no effect&period; Note that this human&hyphen;readable format is not fully specified and can change without notice&period;


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
template&lt;class TYPE&gt;
std::ostream&
xref:BloombergLP/bdlc/operator_lshift-0d3.adoc[operator&lt;&lt;](
    std::ostream& stream,
    xref:BloombergLP/bdlc/CompactedArray.adoc[CompactedArray&lt;TYPE&gt;] const& array);
----

[.small]#xref:BloombergLP/bdlc/operator_lshift-0d3.adoc[_» more&period;&period;&period;_]#

Write the value of the specified `map` to the specified output `stream` in a single&hyphen;line format, and return a reference providing modifiable access to `stream`&period; If `stream` is not valid on entry, this operation has no effect&period; Note that this human&hyphen;readable format is not fully specified and can change without notice&period;


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
template&lt;
    class KEY,
    class VALUE,
    class HASH,
    class EQUAL&gt;
std::ostream&
xref:BloombergLP/bdlc/operator_lshift-04.adoc[operator&lt;&lt;](
    std::ostream& stream,
    xref:BloombergLP/bdlc/FlatHashMap.adoc[FlatHashMap&lt;KEY, VALUE, HASH, EQUAL&gt;] const& map);
----

[.small]#xref:BloombergLP/bdlc/operator_lshift-04.adoc[_» more&period;&period;&period;_]#

Write the specified `queue` to the specified output `stream` and return a reference to the modifiable `stream`&period;


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
template&lt;class T&gt;
std::ostream&
xref:BloombergLP/bdlc/operator_lshift-08.adoc[operator&lt;&lt;](
    std::ostream& stream,
    xref:BloombergLP/bdlc/Queue.adoc[Queue&lt;T&gt;] const& queue);
----

[.small]#xref:BloombergLP/bdlc/operator_lshift-08.adoc[_» more&period;&period;&period;_]#

Write the specified `rhs` index clerk to the specified output `stream` in some single&hyphen;line (human&hyphen;readable) format, and return a reference to the modifiable `stream`&period;


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
std::ostream&
xref:BloombergLP/bdlc/operator_lshift-0d5.adoc[operator&lt;&lt;](
    std::ostream& stream,
    xref:BloombergLP/bdlc/IndexClerk.adoc[IndexClerk] const& rhs);
----

[.small]#xref:BloombergLP/bdlc/operator_lshift-0d5.adoc[_» more&period;&period;&period;_]#

Write the value of the specified `set` to the specified output `stream` in a single&hyphen;line format, and return a reference providing modifiable access to `stream`&period; If `stream` is not valid on entry, this operation has no effect&period; Note that this human&hyphen;readable format is not fully specified and can change without notice&period;


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
template&lt;
    class KEY,
    class HASH,
    class EQUAL&gt;
std::ostream&
xref:BloombergLP/bdlc/operator_lshift-0c.adoc[operator&lt;&lt;](
    std::ostream& stream,
    xref:BloombergLP/bdlc/FlatHashSet.adoc[FlatHashSet&lt;KEY, HASH, EQUAL&gt;] const& set);
----

[.small]#xref:BloombergLP/bdlc/operator_lshift-0c.adoc[_» more&period;&period;&period;_]#


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