fix #136: libmemcachedutil is underlinked
[awesomized/libmemcached] / docs / source / libmemcached / memcached_generate_hash_value.rst
index 2e151a5cdb872e03485f2dd7f6f0a929a5947b78..b1e19e574d1deeb822e4f02861a8b45e38886ebb 100644 (file)
@@ -1,63 +1,69 @@
-===============================
 Generating hash values directly
 ===============================
 
 Generating hash values directly
 ===============================
 
-.. index:: object: memcached_st
-
 Hash a key value
 
 Hash a key value
 
-
--------- 
 SYNOPSIS 
 --------
 
 SYNOPSIS 
 --------
 
-
 #include <libmemcached/memcached.h>
 #include <libmemcached/memcached.h>
+    Compile and link with -lmemcachedutil -lmemcached
 
 
-.. type:: memcached_hash_t
 .. function:: uint32_t memcached_generate_hash_value (const char *key, size_t key_length, memcached_hash_t hash_algorithm)
 
 .. function:: uint32_t memcached_generate_hash_value (const char *key, size_t key_length, memcached_hash_t hash_algorithm)
 
+    :param key: the key to generate a hash of
+    :param key_length: the length of the `key` without any terminating zero
+    :param hash_algorithm: `memcached_hash_t`, the algorithm to use
+    :returns: a 32 bit hash value
+
 .. function:: uint32_t memcached_generate_hash (memcached_st *ptr, const char *key, size_t key_length)
 
 .. function:: uint32_t memcached_generate_hash (memcached_st *ptr, const char *key, size_t key_length)
 
-.. type:: MEMCACHED_HASH_DEFAULT
+    :param ptr: pointer to an initialized `memcached_st` struct
+    :param key: the key to generate a hash of
+    :param key_length: the length of the `key` without any terminating zero
+    :returns: a 32 bit hash value
 
 
-.. type:: MEMCACHED_HASH_MD5
+.. c:type:: enum memcached_hash_t memcached_hash_t
 
 
-.. type:: MEMCACHED_HASH_CRC
+.. enum:: memcached_hash_t
 
 
-.. type:: MEMCACHED_HASH_FNV1_64
+    .. enumerator::  MEMCACHED_HASH_DEFAULT
 
 
-.. type:: MEMCACHED_HASH_FNV1A_64
+    .. enumerator::  MEMCACHED_HASH_MD5
 
 
-.. type:: MEMCACHED_HASH_FNV1_32
+    .. enumerator::  MEMCACHED_HASH_CRC
 
 
-.. type:: MEMCACHED_HASH_FNV1A_32
+    .. enumerator::  MEMCACHED_HASH_FNV1_64
 
 
-.. type:: MEMCACHED_HASH_JENKINS
+    .. enumerator::  MEMCACHED_HASH_FNV1A_64
 
 
-.. type:: MEMCACHED_HASH_MURMUR
+    .. enumerator::  MEMCACHED_HASH_FNV1_32
 
 
-.. type:: MEMCACHED_HASH_HSIEH
+    .. enumerator::  MEMCACHED_HASH_FNV1A_32
 
 
-.. type:: MEMCACHED_HASH_MURMUR3
+    .. enumerator::  MEMCACHED_HASH_HSIEH
 
 
+    .. enumerator::  MEMCACHED_HASH_MURMUR
+
+    .. enumerator::  MEMCACHED_HASH_JENKINS
+
+    .. enumerator::  MEMCACHED_HASH_MURMUR3
+
+    .. enumerator::  MEMCACHED_HASH_CUSTOM
 
 
-Compile and link with -lmemcachedutil -lmemcached
 
 
 
 
------------
 DESCRIPTION
 -----------
 
 DESCRIPTION
 -----------
 
-
 :func:`memcached_generate_hash_value` allows you to hash a key using one of
 the hash functions defined in the library. This method is provided for
 the convenience of higher-level language bindings and is not necessary
 for normal memcache operations.
 
 :func:`memcached_generate_hash_value` allows you to hash a key using one of
 the hash functions defined in the library. This method is provided for
 the convenience of higher-level language bindings and is not necessary
 for normal memcache operations.
 
-The allowed hash algorithm constants are listed in the manpage for
-:func:`memcached_behavior_set`.
+Support for `MEMCACHED_HASH_HSIEH` is a compile time option that is
+disabled by default. To enable tests for this hashing algorithm,
+configure and build libmemcached with the Hsieh hash enabled.
 
 :func:`memcached_generate_hash` takes a :type:`memcached_st` structure
 and produces the hash value that would have been generated based on the 
 
 :func:`memcached_generate_hash` takes a :type:`memcached_st` structure
 and produces the hash value that would have been generated based on the 
@@ -66,19 +72,13 @@ defaults of :type:`memcached_st`.
 As of version 0.36 all hash methods have been placed into the library
 libhashkit(3) which is linked with libmemcached(3). For more information please see its documentation.
 
 As of version 0.36 all hash methods have been placed into the library
 libhashkit(3) which is linked with libmemcached(3). For more information please see its documentation.
 
-
-------
-RETURN
-------
-
+RETURN VALUE
+------------
 
 A 32-bit integer which is the result of hashing the given key.
 For 64-bit hash algorithms, only the least-significant 32 bits are
 returned.
 
 
 A 32-bit integer which is the result of hashing the given key.
 For 64-bit hash algorithms, only the least-significant 32 bits are
 returned.
 
-
-
---------
 SEE ALSO
 --------
 
 SEE ALSO
 --------