docs: add changelogs [ci skip]
[m6w6/libmemcached] / docs / source / libhashkit / hashkit_functions.rst
1 Available Hashes
2 ================
3
4 SYNOPSIS
5 --------
6
7 #include <libhashkit-|libhashkit_version|/hashkit.h>
8 Compile and link with -lhashkit
9
10 .. function:: uint32_t hashkit_default(const char *key, size_t key_length)
11
12 .. function:: uint32_t hashkit_fnv1_64(const char *key, size_t key_length)
13
14 .. function:: uint32_t hashkit_fnv1a_64(const char *key, size_t key_length)
15
16 .. function:: uint32_t hashkit_fnv1_32(const char *key, size_t key_length)
17
18 .. function:: uint32_t hashkit_fnv1a_32(const char *key, size_t key_length)
19
20 .. function:: uint32_t hashkit_crc32(const char *key, size_t key_length)
21
22 .. function:: uint32_t hashkit_hsieh(const char *key, size_t key_length)
23
24 .. function:: uint32_t hashkit_murmur(const char *key, size_t key_length)
25
26 .. function:: uint32_t hashkit_murmur3(const char *key, size_t key_length)
27
28 .. function:: uint32_t hashkit_jenkins(const char *key, size_t key_length)
29
30 .. function:: uint32_t hashkit_md5(const char *key, size_t key_length)
31
32 DESCRIPTION
33 -----------
34
35 These functions generate hash values from a key using a variety of
36 algorithms. These functions can be used standalone, or will be used
37 according to the algorithm set with `hashkit_set_function`
38 or `hashkit_set_distribution_function`.
39
40 The `hashkit_hsieh`, `hashkit_murmur` and `hashkit_murmur3` functions are
41 only available if the library is built with the appropriate flag enabled.
42
43 RETURN VALUE
44 ------------
45
46 A 32-bit hash value.
47
48 SEE ALSO
49 --------
50
51 .. only:: man
52
53 :manpage:`libhashkit(3)`
54 :manpage:`hashkit_create(3)`
55 :manpage:`hashkit_function(3)`
56
57 .. only:: html
58
59 * :doc:`index`
60 * :doc:`hashkit_create`
61 * :doc:`hashkit_function`
62