[#BloombergLP-bslh-hashAppend-0c] = xref:BloombergLP.adoc[BloombergLP]::xref:BloombergLP/bslh.adoc[bslh]::hashAppend :relfileprefix: ../../ :mrdocs: `hashAppend` overloads == Synopses Declared in `<bslh_hash.h>` Append a filesystem path to a hash algorithm. [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- template<class HASHALG> void xref:BloombergLP/bslh/hashAppend-08c.adoc[hashAppend]( HASHALG& hashAlg, std::filesystem::path const& path); ---- [.small]#xref:BloombergLP/bslh/hashAppend-08c.adoc[_» more..._]# Pass a sentinel value for `std::monostate` into the hashing algorithm. [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- template<class HASH_ALGORITHM> void xref:BloombergLP/bslh/hashAppend-04c.adoc[hashAppend]( HASH_ALGORITHM& algorithm, std::monostate const& input); ---- [.small]#xref:BloombergLP/bslh/hashAppend-04c.adoc[_» more..._]# Incorporate the specified `tid` into the specified `algorithm`. [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- template<class t_HASH_ALG> void xref:BloombergLP/bslh/hashAppend-03c.adoc[hashAppend]( t_HASH_ALG& algorithm, std::thread::id const& tid); ---- [.small]#xref:BloombergLP/bslh/hashAppend-03c.adoc[_» more..._]# Combine an optional value into the state of a hash algorithm. [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- template< class HASH_ALGORITHM, class TYPE> void xref:BloombergLP/bslh/hashAppend-043.adoc[hashAppend]( HASH_ALGORITHM& algorithm, std::optional<TYPE> const& input); ---- [.small]#xref:BloombergLP/bslh/hashAppend-043.adoc[_» more..._]# Invoke `hashAppend`, with the specified `algorithm`, on each element of the specified `input` in order of increasing index as defined by `std::get`. [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- template< class HASH_ALGORITHM, class... TYPE> void xref:BloombergLP/bslh/hashAppend-07.adoc[hashAppend]( HASH_ALGORITHM& algorithm, std::tuple<TYPE...> const& input); ---- [.small]#xref:BloombergLP/bslh/hashAppend-07.adoc[_» more..._]# Append the active alternative of a `std::variant` to a hash algorithm. [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- template< class HASH_ALGORITHM, class... TYPE> void xref:BloombergLP/bslh/hashAppend-058.adoc[hashAppend]( HASH_ALGORITHM& algorithm, std::variant<TYPE...> const& input); ---- [.small]#xref:BloombergLP/bslh/hashAppend-058.adoc[_» more..._]# Combine the specified `input` into the state of the specified `hashAlg`. [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- template< class HASH_ALGORITHM, class TYPE> void xref:BloombergLP/bslh/hashAppend-032.adoc[hashAppend]( HASH_ALGORITHM& hashAlg, TYPE input) requires (bsl::is_integral<TYPE>::value || bsl::is_pointer<TYPE>::value || bsl::is_enum<TYPE>::value) && !bsl::is_same<TYPE, bool>::value; ---- [.small]#xref:BloombergLP/bslh/hashAppend-032.adoc[_» more..._]# Combine the specified `input` into the state of the specified `hashAlg`. [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- template< class HASH_ALGORITHM, class TYPE> void xref:BloombergLP/bslh/hashAppend-082.adoc[hashAppend]( HASH_ALGORITHM& hashAlg, TYPE input) requires bsl::is_floating_point<TYPE>::value && !bsl::is_same<TYPE, long double>::value; ---- [.small]#xref:BloombergLP/bslh/hashAppend-082.adoc[_» more..._]# Combine the specified `input` into the state of the specified `hashAlg`. [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- template< class HASH_ALGORITHM, class TYPE> void xref:BloombergLP/bslh/hashAppend-086.adoc[hashAppend]( HASH_ALGORITHM& hashAlg, TYPE input) requires bsl::is_same<TYPE, bool>::value; ---- [.small]#xref:BloombergLP/bslh/hashAppend-086.adoc[_» more..._]# Combine the specified `input` into the state of the specified `hashAlg`. [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- template< class HASH_ALGORITHM, class TYPE> void xref:BloombergLP/bslh/hashAppend-056.adoc[hashAppend]( HASH_ALGORITHM& hashAlg, TYPE input) requires bsl::is_same<TYPE, long double>::value; ---- [.small]#xref:BloombergLP/bslh/hashAppend-056.adoc[_» more..._]# Combine the specified `input` into the state of the specified `hashAlg`. [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- template< class HASH_ALGORITHM, size_t N> void xref:BloombergLP/bslh/hashAppend-0f6.adoc[hashAppend]( HASH_ALGORITHM& hashAlg, char(& input)[]); ---- [.small]#xref:BloombergLP/bslh/hashAppend-0f6.adoc[_» more..._]# Combine the specified `input` into the state of the specified `hashAlg`. [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- template< class HASH_ALGORITHM, size_t N> void xref:BloombergLP/bslh/hashAppend-0f1.adoc[hashAppend]( HASH_ALGORITHM& hashAlg, char const(& input)[]); ---- [.small]#xref:BloombergLP/bslh/hashAppend-0f1.adoc[_» more..._]# Pass the specified `input` to the specified `hashAlg`. [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- template< class HASHALG, class CHAR_TYPE, class CHAR_TRAITS> void xref:BloombergLP/bslh/hashAppend-037.adoc[hashAppend]( HASHALG& hashAlg, std::basic_string_view<CHAR_TYPE, CHAR_TRAITS> const& input); ---- [.small]#xref:BloombergLP/bslh/hashAppend-037.adoc[_» more..._]# Invoke the (appropriate) `hashAppend` function, with the specified `algorithm` on the `first` and `second` members, in that order, of the specified `input` pair. [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- template< class HASH_ALGORITHM, class TYPE1, class TYPE2> void xref:BloombergLP/bslh/hashAppend-0f38.adoc[hashAppend]( HASH_ALGORITHM& algorithm, std::pair<TYPE1, TYPE2> const& input); ---- [.small]#xref:BloombergLP/bslh/hashAppend-0f38.adoc[_» more..._]# Combine the specified `input` into the state of the specified `hashAlg`. [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- template< class HASH_ALGORITHM, class TYPE, size_t N> void xref:BloombergLP/bslh/hashAppend-0b.adoc[hashAppend]( HASH_ALGORITHM& hashAlg, TYPE(& input)[]); ---- [.small]#xref:BloombergLP/bslh/hashAppend-0b.adoc[_» more..._]# Combine the specified `input` into the state of the specified `hashAlg`. [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- template< class HASH_ALGORITHM, class TYPE, size_t N> void xref:BloombergLP/bslh/hashAppend-0f39.adoc[hashAppend]( HASH_ALGORITHM& hashAlg, TYPE const(& input)[]); ---- [.small]#xref:BloombergLP/bslh/hashAppend-0f39.adoc[_» more..._]# Append a `std::array` to a hashing algorithm. [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- template< class HASH_ALGORITHM, class TYPE, size_t SIZE> void xref:BloombergLP/bslh/hashAppend-0a.adoc[hashAppend]( HASH_ALGORITHM& hashAlgorithm, std::array<TYPE, SIZE> const& input); ---- [.small]#xref:BloombergLP/bslh/hashAppend-0a.adoc[_» more..._]# Append a `std::basic_string` to a hashing algorithm. [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- template< class HASHALG, class CHAR_TYPE, class CHAR_TRAITS, class ALLOCATOR> void xref:BloombergLP/bslh/hashAppend-034.adoc[hashAppend]( HASHALG& hashAlg, std::basic_string<CHAR_TYPE, CHAR_TRAITS, ALLOCATOR> const& input); ---- [.small]#xref:BloombergLP/bslh/hashAppend-034.adoc[_» more..._]# == Parameters [cols="1,4"] |=== | Name| Description | *hashAlg* | hashing algorithm that receives the path hash input | *path* | filesystem path whose hash value is appended | *algorithm* | hashing algorithm that combines the monostate sentinel | *input* | unused `std::monostate` value being hashed | *tid* | thread identifier to convert and append | *hashAlgorithm* | hashing algorithm object |=== [.small]#Created with https://www.mrdocs.com[MrDocs]#