BloombergLP::bslh::hashAppend

hashAppend overloads

Synopses

Declared in <bslh_hash.h>

Append a filesystem path to a hash algorithm.

template<class HASHALG>
void
hashAppend(
    HASHALG& hashAlg,
    std::filesystem::path const& path);
» more...

Pass a sentinel value for std::monostate into the hashing algorithm.

template<class HASH_ALGORITHM>
void
hashAppend(
    HASH_ALGORITHM& algorithm,
    std::monostate const& input);
» more...

Incorporate the specified tid into the specified algorithm.

template<class t_HASH_ALG>
void
hashAppend(
    t_HASH_ALG& algorithm,
    std::thread::id const& tid);
» more...

Combine an optional value into the state of a hash algorithm.

template<
    class HASH_ALGORITHM,
    class TYPE>
void
hashAppend(
    HASH_ALGORITHM& algorithm,
    std::optional<TYPE> const& input);
» more...

Invoke hashAppend, with the specified algorithm, on each element of the specified input in order of increasing index as defined by std::get.

template<
    class HASH_ALGORITHM,
    class... TYPE>
void
hashAppend(
    HASH_ALGORITHM& algorithm,
    std::tuple<TYPE...> const& input);
» more...

Append the active alternative of a std::variant to a hash algorithm.

template<
    class HASH_ALGORITHM,
    class... TYPE>
void
hashAppend(
    HASH_ALGORITHM& algorithm,
    std::variant<TYPE...> const& input);
» more...

Combine the specified input into the state of the specified hashAlg.

template<
    class HASH_ALGORITHM,
    class TYPE>
void
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;
» more...

Combine the specified input into the state of the specified hashAlg.

template<
    class HASH_ALGORITHM,
    class TYPE>
void
hashAppend(
    HASH_ALGORITHM& hashAlg,
    TYPE input)
requires bsl::is_floating_point<TYPE>::value &&
   !bsl::is_same<TYPE, long double>::value;
» more...

Combine the specified input into the state of the specified hashAlg.

template<
    class HASH_ALGORITHM,
    class TYPE>
void
hashAppend(
    HASH_ALGORITHM& hashAlg,
    TYPE input)
requires bsl::is_same<TYPE, bool>::value;
» more...

Combine the specified input into the state of the specified hashAlg.

template<
    class HASH_ALGORITHM,
    class TYPE>
void
hashAppend(
    HASH_ALGORITHM& hashAlg,
    TYPE input)
requires bsl::is_same<TYPE, long double>::value;
» more...

Combine the specified input into the state of the specified hashAlg.

template<
    class HASH_ALGORITHM,
    size_t N>
void
hashAppend(
    HASH_ALGORITHM& hashAlg,
    char(& input)[]);
» more...

Combine the specified input into the state of the specified hashAlg.

template<
    class HASH_ALGORITHM,
    size_t N>
void
hashAppend(
    HASH_ALGORITHM& hashAlg,
    char const(& input)[]);
» more...

Pass the specified input to the specified hashAlg.

template<
    class HASHALG,
    class CHAR_TYPE,
    class CHAR_TRAITS>
void
hashAppend(
    HASHALG& hashAlg,
    std::basic_string_view<CHAR_TYPE, CHAR_TRAITS> const& input);
» more...

Invoke the (appropriate) hashAppend function, with the specified algorithm on the first and second members, in that order, of the specified input pair.

template<
    class HASH_ALGORITHM,
    class TYPE1,
    class TYPE2>
void
hashAppend(
    HASH_ALGORITHM& algorithm,
    std::pair<TYPE1, TYPE2> const& input);
» more...

Combine the specified input into the state of the specified hashAlg.

template<
    class HASH_ALGORITHM,
    class TYPE,
    size_t N>
void
hashAppend(
    HASH_ALGORITHM& hashAlg,
    TYPE(& input)[]);
» more...

Combine the specified input into the state of the specified hashAlg.

template<
    class HASH_ALGORITHM,
    class TYPE,
    size_t N>
void
hashAppend(
    HASH_ALGORITHM& hashAlg,
    TYPE const(& input)[]);
» more...

Append a std::array to a hashing algorithm.

template<
    class HASH_ALGORITHM,
    class TYPE,
    size_t SIZE>
void
hashAppend(
    HASH_ALGORITHM& hashAlgorithm,
    std::array<TYPE, SIZE> const& input);
» more...

Append a std::basic_string to a hashing algorithm.

template<
    class HASHALG,
    class CHAR_TYPE,
    class CHAR_TRAITS,
    class ALLOCATOR>
void
hashAppend(
    HASHALG& hashAlg,
    std::basic_string<CHAR_TYPE, CHAR_TRAITS, ALLOCATOR> const& input);
» more...

Parameters

NameDescription
hashAlghashing algorithm that receives the path hash input
pathfilesystem path whose hash value is appended
algorithmhashing algorithm that combines the monostate sentinel
inputunused std::monostate value being hashed
tidthread identifier to convert and append
hashAlgorithmhashing algorithm object