[#BloombergLP-bslh-hashTuple_Util-02]
= xref:BloombergLP.adoc[BloombergLP]::xref:BloombergLP/bslh.adoc[bslh]::hashTuple&lowbar;Util
:relfileprefix: ../../
:mrdocs:

Component&hyphen;private utility for hashing tuple elements in reverse order&period;

== Synopsis

Declared in `&lt;bslh&lowbar;hashtuple&period;h&gt;`

[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
template&lt;
    std::size&lowbar;t BACK&lowbar;INDEX,
    class HASH&lowbar;ALGORITHM,
    class TUPLE&lowbar;TYPE&gt;
struct hashTuple&lowbar;Util;
----

== Static Member Functions

[cols="1,4"]
|===
| Name| Description
| xref:BloombergLP/bslh/hashTuple_Util-02/visit.adoc[`visit`] 
| Invoke the (appropriate) `hashAppend` function using the specified `algorithm` and the &quot;current&quot; element of the specified `input` tuple and then visit the next element&period; The index of the current element is the size of (template parameter) `TUPLE&lowbar;TYPE` minus (template parameter) `BACK&lowbar;INDEX`&period; `BACK&lowbar;INDEX` is reduced on each recursion and eventually, when `BACK&lowbar;INDEX` is 0, a &quot;do nothing&quot; function is called to stop the recursion&period;
|===


== Specializations

[cols="1"]
|===
| Name
| xref:BloombergLP/bslh/hashTuple_Util-07.adoc[`hashTuple&lowbar;Util&lt;0, HASH&lowbar;ALGORITHM, TUPLE&lowbar;TYPE&gt;`] 
|===



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