[#bsl-_Hashtable_iterator]
= xref:bsl.adoc[bsl]::&lowbar;Hashtable&lowbar;iterator
:relfileprefix: ../
:mrdocs:

Forward&hyphen;iterator base holding a hashtable node and table pointer&period;

== Synopsis

Declared in `&lt;bslstp&lowbar;hashtable&period;h&gt;`

[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
template&lt;
    class &lowbar;Val,
    class &lowbar;Key,
    class &lowbar;HF,
    class &lowbar;ExK,
    class &lowbar;EqK,
    class &lowbar;All&gt;
struct &lowbar;Hashtable&lowbar;iterator;
----

== Type Aliases

[cols="1,4"]
|===
| Name| Description
| xref:bsl/_Hashtable_iterator/_Hashtable.adoc[`&lowbar;Hashtable`] 
| Underlying hashtable type&period;
| xref:bsl/_Hashtable_iterator/_Node.adoc[`&lowbar;Node`] 
| Node type stored in the hashtable&period;
|===


== Member Functions

[cols="1,4"]
|===
| Name| Description
| xref:bsl/_Hashtable_iterator/2constructor-052.adoc[`&lowbar;Hashtable&lowbar;iterator`]         [.small]#[constructor]#
| Constructors
| xref:bsl/_Hashtable_iterator/_M_skip_to_next.adoc[`&lowbar;M&lowbar;skip&lowbar;to&lowbar;next`] 
| Advance this iterator to the next element in the hashtable&period;
|===


== Data Members

[cols="1,4"]
|===
| Name| Description
| xref:bsl/_Hashtable_iterator/_M_cur.adoc[`&lowbar;M&lowbar;cur`] 
| Current node referenced by this iterator&period;
| xref:bsl/_Hashtable_iterator/_M_ht.adoc[`&lowbar;M&lowbar;ht`] 
| Hashtable that owns the referenced node&period;
|===


== Non-Member Functions

[cols="1,4"]
|===
| Name| Description
| xref:bsl/operator_not_eq-095.adoc[`operator!&equals;`]
| Return whether two hashtable iterators differ&period;
|===

== Derived Classes

[cols="1,4"]
|===
| Name| Description
| xref:bsl/_Ht_iterator.adoc[`&lowbar;Ht&lowbar;iterator`] 
| Constness&hyphen;aware forward iterator over a hashtable of `&lowbar;Val`&period;
|===


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