BloombergLP::bdlb::HashUtil::hash0

Return a modular hash value for the specified null-terminated string.

Synopsis

Declared in <bdlb_hashutil.h>

static
unsigned int
hash0(
    char const* string,
    int modulus);

Description

Return a pseudo-random unsigned integer in the range from zero to one less than the specified modulus corresponding to the specified null-terminated string. The behavior is undefined unless 0 < modulus < 2^31. Note that modulus is expected to be a prime not close to an integral power of 2. Also note that specifying a modulus of 1 will cause 0 to be returned for every string.

Return Value

modular hash value for string in [0 .. modulus)]

Parameters

NameDescription
stringnull-terminated string to hash
moduluspositive upper bound (exclusive) of the hash range