[#BloombergLP-bslstl-operator_eq-0c1]
= xref:BloombergLP.adoc[BloombergLP]::xref:BloombergLP/bslstl.adoc[bslstl]::operator&equals;&equals;
:relfileprefix: ../../
:mrdocs:

Equality operators

== Synopses

Declared in `&lt;bslstl&lowbar;bidirectionaliterator&period;h&gt;`

Return `true` if the specified `lhs` iterator has the same value as the specified `rhs` iterator, and `false` otherwise&period; Two iterators have the same value if they refer to the same element, or both have the past&hyphen;the&hyphen; end value for the underlying sequence&period; The behavior is undefined unless both iterators refer to the same underlying sequence&period;


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
template&lt;
    class T1,
    class T2,
    class ITER&lowbar;IMP,
    class TAG&lowbar;TYPE&gt;
bool
xref:BloombergLP/bslstl/operator_eq-066.adoc[operator&equals;&equals;](
    xref:BloombergLP/bslstl/ForwardIterator.adoc[ForwardIterator&lt;T1, ITER&lowbar;IMP, TAG&lowbar;TYPE&gt;] const& lhs,
    xref:BloombergLP/bslstl/ForwardIterator.adoc[ForwardIterator&lt;T2, ITER&lowbar;IMP, TAG&lowbar;TYPE&gt;] const& rhs);
----

[.small]#xref:BloombergLP/bslstl/operator_eq-066.adoc[_» more&period;&period;&period;_]#

Return `true` if the specified `lhs` iterator has the same value as the specified `rhs` iterator, and `false` otherwise&period; Two iterators have the same value if they refer to the same element, or both have the past&hyphen;the&hyphen; end value for the underlying sequence&period; The behavior is undefined unless both iterators refer to the same underlying sequence&period;


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
template&lt;
    class T1,
    class T2,
    class ITER&lowbar;IMP,
    class TAG&lowbar;TYPE&gt;
bool
xref:BloombergLP/bslstl/operator_eq-08.adoc[operator&equals;&equals;](
    xref:BloombergLP/bslstl/BidirectionalIterator.adoc[BidirectionalIterator&lt;T1, ITER&lowbar;IMP, TAG&lowbar;TYPE&gt;] const& lhs,
    xref:BloombergLP/bslstl/BidirectionalIterator.adoc[BidirectionalIterator&lt;T2, ITER&lowbar;IMP, TAG&lowbar;TYPE&gt;] const& rhs);
----

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

Return `true` if the specified `lhs` iterator has the same value as the specified `rhs` iterator, and `false` otherwise&period; Two iterators have the same value if they refer to the same element, or both have the past&hyphen;the&hyphen; end value for the underlying sequence&period; The behavior is undefined unless both iterators refer to the same underlying sequence&period;


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
template&lt;
    class T1,
    class T2,
    class ITER&lowbar;IMP,
    class TAG&lowbar;TYPE&gt;
bool
xref:BloombergLP/bslstl/operator_eq-0c7.adoc[operator&equals;&equals;](
    xref:BloombergLP/bslstl/RandomAccessIterator.adoc[RandomAccessIterator&lt;T1, ITER&lowbar;IMP, TAG&lowbar;TYPE&gt;] const& lhs,
    xref:BloombergLP/bslstl/RandomAccessIterator.adoc[RandomAccessIterator&lt;T2, ITER&lowbar;IMP, TAG&lowbar;TYPE&gt;] const& rhs);
----

[.small]#xref:BloombergLP/bslstl/operator_eq-0c7.adoc[_» more&period;&period;&period;_]#

Return whether the specified iterators refer to the same tree node&period;


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
bool
xref:BloombergLP/bslstl/operator_eq-02.adoc[operator&equals;&equals;](
    xref:BloombergLP/bslstl/TreeIterator.adoc[TreeIterator&lt;VALUE1, NODEPTR, DIFF&gt;] const&,
    xref:BloombergLP/bslstl/TreeIterator.adoc[TreeIterator&lt;VALUE2, NODEPTR, DIFF&gt;] const&);
----

[.small]#xref:BloombergLP/bslstl/operator_eq-02.adoc[_» more&period;&period;&period;_]#

Return `true` if the specified `lhs` and the specified `rhs` iterators have the same value and `false` otherwise&period; Two iterators have the same value if they refer to the same position in the same tree, or if both iterators are at an invalid position in the tree (i&period;e&period;, the `end` of the tree, or the default constructed value)&period;


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
template&lt;
    class VALUE1,
    class VALUE2,
    class NODEPTR,
    class DIFF&gt;
bool
xref:BloombergLP/bslstl/operator_eq-0c0.adoc[operator&equals;&equals;](
    xref:BloombergLP/bslstl/TreeIterator.adoc[TreeIterator&lt;VALUE1, NODEPTR, DIFF&gt;] const& lhs,
    xref:BloombergLP/bslstl/TreeIterator.adoc[TreeIterator&lt;VALUE2, NODEPTR, DIFF&gt;] const& rhs);
----

[.small]#xref:BloombergLP/bslstl/operator_eq-0c0.adoc[_» more&period;&period;&period;_]#

Return `true` if the specified `lhs` and `rhs` objects have the same value, and `false` otherwise&period; Two `HashTable` objects have the same value if they have the same number of elements, and for every subset of elements in `lhs` having keys that compare equal (according to that hash table&apos;s `comparator`), a corresponding subset of elements exists in `rhs`, having the same number of elements, where, for some permutation of the `lhs` subset, every element in that subset compares equal (using `operator&equals;&equals;`) to the corresponding element in the `rhs` subset&period; The behavior is undefined unless both the `hasher` and `comparator` of `lhs` and `rhs` return the same value for every valid input&period; Note that this method requires that the `ValueType` of the parameterized `KEY&lowbar;CONFIG` be &quot;equality&hyphen;comparable&quot; (see &lcub;Requirements on `KEY&lowbar;CONFIG`&rcub;)&period;


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
template&lt;
    class KEY&lowbar;CONFIG,
    class HASHER,
    class COMPARATOR,
    class ALLOCATOR&gt;
bool
xref:BloombergLP/bslstl/operator_eq-0f.adoc[operator&equals;&equals;](
    xref:BloombergLP/bslstl/HashTable-06.adoc[HashTable&lt;KEY&lowbar;CONFIG, HASHER, COMPARATOR, ALLOCATOR&gt;] const& lhs,
    xref:BloombergLP/bslstl/HashTable-06.adoc[HashTable&lt;KEY&lowbar;CONFIG, HASHER, COMPARATOR, ALLOCATOR&gt;] const& rhs);
----

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

Return `true` if the specified `lhs` and the specified `rhs` iterators have the same value and `false` otherwise&period; Two iterators have the same value if they refer to the same element in the same hash table, or if both iterators are positioned after the end of a hash table bucket&period;


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
template&lt;
    class VALUE&lowbar;TYPE,
    class DIFFERENCE&lowbar;TYPE&gt;
bool
xref:BloombergLP/bslstl/operator_eq-0b.adoc[operator&equals;&equals;](
    xref:BloombergLP/bslstl/HashTableBucketIterator.adoc[HashTableBucketIterator&lt;VALUE&lowbar;TYPE, DIFFERENCE&lowbar;TYPE&gt;] const& lhs,
    xref:BloombergLP/bslstl/HashTableBucketIterator.adoc[HashTableBucketIterator&lt;VALUE&lowbar;TYPE, DIFFERENCE&lowbar;TYPE&gt;] const& rhs);
----

[.small]#xref:BloombergLP/bslstl/operator_eq-0b.adoc[_» more&period;&period;&period;_]#

Same as the preceding overload&period;


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
template&lt;
    class VALUE&lowbar;TYPE,
    class DIFFERENCE&lowbar;TYPE&gt;
bool
xref:BloombergLP/bslstl/operator_eq-0e.adoc[operator&equals;&equals;](
    xref:BloombergLP/bslstl/HashTableBucketIterator.adoc[HashTableBucketIterator&lt;VALUE&lowbar;TYPE, DIFFERENCE&lowbar;TYPE&gt;] const& lhs,
    xref:BloombergLP/bslstl/HashTableBucketIterator.adoc[HashTableBucketIterator&lt;VALUE&lowbar;TYPE const, DIFFERENCE&lowbar;TYPE&gt;] const& rhs);
----

[.small]#xref:BloombergLP/bslstl/operator_eq-0e.adoc[_» more&period;&period;&period;_]#

Same as the preceding overload&period;


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
template&lt;
    class VALUE&lowbar;TYPE,
    class DIFFERENCE&lowbar;TYPE&gt;
bool
xref:BloombergLP/bslstl/operator_eq-04e.adoc[operator&equals;&equals;](
    xref:BloombergLP/bslstl/HashTableBucketIterator.adoc[HashTableBucketIterator&lt;VALUE&lowbar;TYPE const, DIFFERENCE&lowbar;TYPE&gt;] const& lhs,
    xref:BloombergLP/bslstl/HashTableBucketIterator.adoc[HashTableBucketIterator&lt;VALUE&lowbar;TYPE, DIFFERENCE&lowbar;TYPE&gt;] const& rhs);
----

[.small]#xref:BloombergLP/bslstl/operator_eq-04e.adoc[_» more&period;&period;&period;_]#

Same as the preceding overload&period;


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
template&lt;
    class VALUE&lowbar;TYPE,
    class DIFFERENCE&lowbar;TYPE&gt;
bool
xref:BloombergLP/bslstl/operator_eq-040.adoc[operator&equals;&equals;](
    xref:BloombergLP/bslstl/HashTableBucketIterator.adoc[HashTableBucketIterator&lt;VALUE&lowbar;TYPE const, DIFFERENCE&lowbar;TYPE&gt;] const& lhs,
    xref:BloombergLP/bslstl/HashTableBucketIterator.adoc[HashTableBucketIterator&lt;VALUE&lowbar;TYPE const, DIFFERENCE&lowbar;TYPE&gt;] const& rhs);
----

[.small]#xref:BloombergLP/bslstl/operator_eq-040.adoc[_» more&period;&period;&period;_]#

Return `true` if the specified `lhs` and the specified `rhs` iterators have the same value and `false` otherwise&period; Two iterators have the same value if they refer to the same node in the same list, or if both iterators are at the past&hyphen;the&hyphen;end position of the tree&period;


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
template&lt;
    class VALUE&lowbar;TYPE,
    class DIFFERENCE&lowbar;TYPE&gt;
bool
xref:BloombergLP/bslstl/operator_eq-09.adoc[operator&equals;&equals;](
    xref:BloombergLP/bslstl/HashTableIterator.adoc[HashTableIterator&lt;VALUE&lowbar;TYPE, DIFFERENCE&lowbar;TYPE&gt;] const& lhs,
    xref:BloombergLP/bslstl/HashTableIterator.adoc[HashTableIterator&lt;VALUE&lowbar;TYPE, DIFFERENCE&lowbar;TYPE&gt;] const& rhs);
----

[.small]#xref:BloombergLP/bslstl/operator_eq-09.adoc[_» more&period;&period;&period;_]#

Same as the preceding overload&period;


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
template&lt;
    class VALUE&lowbar;TYPE,
    class DIFFERENCE&lowbar;TYPE&gt;
bool
xref:BloombergLP/bslstl/operator_eq-03.adoc[operator&equals;&equals;](
    xref:BloombergLP/bslstl/HashTableIterator.adoc[HashTableIterator&lt;VALUE&lowbar;TYPE, DIFFERENCE&lowbar;TYPE&gt;] const& lhs,
    xref:BloombergLP/bslstl/HashTableIterator.adoc[HashTableIterator&lt;VALUE&lowbar;TYPE const, DIFFERENCE&lowbar;TYPE&gt;] const& rhs);
----

[.small]#xref:BloombergLP/bslstl/operator_eq-03.adoc[_» more&period;&period;&period;_]#

Same as the preceding overload&period;


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
template&lt;
    class VALUE&lowbar;TYPE,
    class DIFFERENCE&lowbar;TYPE&gt;
bool
xref:BloombergLP/bslstl/operator_eq-06e.adoc[operator&equals;&equals;](
    xref:BloombergLP/bslstl/HashTableIterator.adoc[HashTableIterator&lt;VALUE&lowbar;TYPE const, DIFFERENCE&lowbar;TYPE&gt;] const& lhs,
    xref:BloombergLP/bslstl/HashTableIterator.adoc[HashTableIterator&lt;VALUE&lowbar;TYPE, DIFFERENCE&lowbar;TYPE&gt;] const& rhs);
----

[.small]#xref:BloombergLP/bslstl/operator_eq-06e.adoc[_» more&period;&period;&period;_]#

Same as the preceding overload&period;


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
template&lt;
    class VALUE&lowbar;TYPE,
    class DIFFERENCE&lowbar;TYPE&gt;
bool
xref:BloombergLP/bslstl/operator_eq-07.adoc[operator&equals;&equals;](
    xref:BloombergLP/bslstl/HashTableIterator.adoc[HashTableIterator&lt;VALUE&lowbar;TYPE const, DIFFERENCE&lowbar;TYPE&gt;] const& lhs,
    xref:BloombergLP/bslstl/HashTableIterator.adoc[HashTableIterator&lt;VALUE&lowbar;TYPE const, DIFFERENCE&lowbar;TYPE&gt;] const& rhs);
----

[.small]#xref:BloombergLP/bslstl/operator_eq-07.adoc[_» more&period;&period;&period;_]#


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