8#ifndef INCLUDED_BSLH_SEEDEDHASH
9#define INCLUDED_BSLH_SEEDEDHASH
286#include <bslscm_version.h>
305template <
class SEED_GENERATOR,
class HASH_ALGORITHM
314 char seed[HASH_ALGORITHM::k_SEED_LENGTH];
336 explicit SeededHash(SEED_GENERATOR& seedGenerator);
355 template <
class TYPE>
365template <
class SEED_GENERATOR,
class HASH_ALGORITHM>
369 SEED_GENERATOR seedGenerator = SEED_GENERATOR();
370 seedGenerator.generateSeed(seed, HASH_ALGORITHM::k_SEED_LENGTH);
373template <
class SEED_GENERATOR,
class HASH_ALGORITHM>
376 SEED_GENERATOR& seedGenerator)
378 seedGenerator.generateSeed(seed, HASH_ALGORITHM::k_SEED_LENGTH);
382template <
class SEED_GENERATOR,
class HASH_ALGORITHM>
388 HASH_ALGORITHM hashAlg(seed);
390 return static_cast<result_type>(hashAlg.computeHash());
Definition bslh_defaultseededhashalgorithm.h:359
#define BSLS_IDENT(str)
Definition bsls_ident.h:195
Definition bslh_defaulthashalgorithm.h:339
bsl::enable_if<(bsl::is_integral< TYPE >::value||bsl::is_pointer< TYPE >::value||bsl::is_enum< TYPE >::value)&&!bsl::is_same< TYPE, bool >::value >::type hashAppend(HASH_ALGORITHM &hashAlg, TYPE input)
Definition bslh_hash.h:638
Definition bslh_seededhash.h:307
SeededHash(const SeededHash &original)=default
SeededHash()
Definition bslh_seededhash.h:367
size_t result_type
Definition bslh_seededhash.h:321
SeededHash & operator=(const SeededHash &rhs)=default
result_type operator()(const TYPE &type) const
Definition bslh_seededhash.h:386