[#BloombergLP-bslstp-Hash-09]
= xref:BloombergLP.adoc[BloombergLP]::xref:BloombergLP/bslstp.adoc[bslstp]::Hash
:relfileprefix: ../../
:mrdocs:

Empty base class for hashing&period;

== Synopsis

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

[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
template&lt;class HASH&lowbar;KEY&gt;
struct Hash;
----

== Description

No general hash struct is defined&semi; each type requires a specialization&period; Leaving this struct declared but undefined will generate error messages that are more clear when someone tries to use a key that does not have a corresponding hash function&period;

== Specializations

[cols="1,4"]
|===
| Name| Description
| xref:BloombergLP/bslstp/Hash-0a.adoc[`Hash&lt;char&gt;`] 
| Specialization of `Hash` for `char` values&period;
| xref:BloombergLP/bslstp/Hash-0f3.adoc[`Hash&lt;int&gt;`] 
| Specialization of `Hash` for `int` values&period;
| xref:BloombergLP/bslstp/Hash-0fb.adoc[`Hash&lt;long&gt;`] 
| Specialization of `Hash` for `long` values&period;
| xref:BloombergLP/bslstp/Hash-00c.adoc[`Hash&lt;long long&gt;`] 
| Specialization of `Hash` for `long long` values&period;
| xref:BloombergLP/bslstp/Hash-0b.adoc[`Hash&lt;short&gt;`] 
| Specialization of `Hash` for `short` values&period;
| xref:BloombergLP/bslstp/Hash-008.adoc[`Hash&lt;signed char&gt;`] 
| Specialization of `Hash` for `signed` `char` values&period;
| xref:BloombergLP/bslstp/Hash-01d.adoc[`Hash&lt;unsigned char&gt;`] 
| Specialization of `Hash` for `unsigned` `char` values&period;
| xref:BloombergLP/bslstp/Hash-06.adoc[`Hash&lt;unsigned int&gt;`] 
| Specialization of `Hash` for `unsigned` `int` values&period;
| xref:BloombergLP/bslstp/Hash-05.adoc[`Hash&lt;unsigned long&gt;`] 
| Specialization of `Hash` for `unsigned` `long` values&period;
| xref:BloombergLP/bslstp/Hash-018.adoc[`Hash&lt;unsigned long long&gt;`] 
| Specialization of `Hash` for `unsigned` `long long` values&period;
| xref:BloombergLP/bslstp/Hash-00d.adoc[`Hash&lt;unsigned short&gt;`] 
| Specialization of `Hash` for `unsigned` `short` values&period;
|===



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