[#BloombergLP-bslh-Hash-07] = xref:BloombergLP.adoc[BloombergLP]::xref:BloombergLP/bslh.adoc[bslh]::Hash :relfileprefix: ../../ :mrdocs: This struct wraps the (template parameter) type `HASH_ALGORITHM` in an interface that satisfies the `hash` requirements of the C++11 standard. == Synopsis Declared in `<bslh_hash.h>` [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- template<class HASH_ALGORITHM = xref:BloombergLP/bslh/DefaultHashAlgorithm.adoc[bslh::DefaultHashAlgorithm]> struct Hash; ---- == Type Aliases [cols="1,4"] |=== | Name| Description | xref:BloombergLP/bslh/Hash-07/HashAlgorithm.adoc[`HashAlgorithm`] | Make the `HASH_ALGORITHM` template parameter available to clients. | xref:BloombergLP/bslh/Hash-07/result_type.adoc[`result_type`] | The type of the hash value that will be returned by the function‐call operator. |=== == Member Functions [cols="1,4"] |=== | Name| Description | xref:BloombergLP/bslh/Hash-07/operator_call.adoc[`operator()`] | Return a hash value for the specified `key`. |=== == Specializations [cols="1,4"] |=== | Name| Description | xref:BloombergLP/bslh/Hash-0a.adoc[`Hash<std::filesystem::path>`] | Specialization of `hash` for `std::filesystem::path` values. |=== == Derived Classes [cols="1,4"] |=== | Name| Description | xref:bsl/hash-017.adoc[`hash<basic_string<CHAR_TYPE, CHAR_TRAITS, ALLOCATOR>>`] | Specialize `bsl::hash` for strings, including an overload for pointers to allow character arrays to be hashed without converting them first. | xref:bsl/hash-06.adoc[`hash`] | Empty base class for hashing. |=== [.small]#Created with https://www.mrdocs.com[MrDocs]#