docs: add changelogs [ci skip]
[awesomized/libmemcached] / docs / source / libhashkit / hashkit_create.rst
index b11f6420023f2d859e67c23019259f403bab2814..b88124dc5c021819bdc31522ad3efd440528d031 100644 (file)
@@ -1,8 +1,6 @@
 Creating a hashkit structure
 ============================
 
-Create, copy and free a hashkit structure
-
 SYNOPSIS
 --------
 
@@ -13,39 +11,52 @@ SYNOPSIS
 
 .. function:: hashkit_st *hashkit_create(hashkit_st *hash)
 
+    :param hash: memory address of a `hashkit_st` struct;
+        if a nullptr is passed, the struct will be dynamically allocated by libhashkit
+    :returns: pointer to initialized `hashkit_st` structure
+
 .. function:: hashkit_st *hashkit_clone(hashkit_st *destination, const hashkit_st *ptr)
 
+    :param destination: memory address of a `hashkit_st` struct;
+        if a nullptr is passed, the struct will be dynamically allocated by libhashkit
+    :param ptr: pointer of the `hashkit_st` struct to copy
+    :returns: pointer to a `hashkit_st` structure (`destination`, if not nullptr), initialized from `ptr`
+
 .. function:: void hashkit_free(hashkit_st *hash)
 
+    :param hash: pointer to an initialized `hashkit_st` struct
+
 .. function:: bool hashkit_is_allocated(const hashkit_st *hash)
 
+    :param hash: pointer to an initialized `hashkit_st` struct
+    :returns: bool, whether the `hash` struct was dynamically allocated
+
 DESCRIPTION
 -----------
 
-The :func:`hashkit_create` function initializes a hashkit object for use. If
-you pass a NULL argument for hash, then the memory for the object is
-allocated. If you specify a pre-allocated piece of memory, that is
-initialized for use.
+The `hashkit_create` function initializes a hashkit object for use. If you pass
+a nullptr argument for hash, then the memory for the object is allocated. If you
+specify a pre-allocated piece of memory, that is initialized for use.
 
-The :func:`hashkit_clone` function initializes a hashkit object much like
-:func:`hashkit_create`, but instead of using default settings it will use
-the settings of the ptr hashkit object.
+The `hashkit_clone` function initializes a hashkit object much like
+`hashkit_create`, but instead of using default settings it will use the settings
+of the ptr hashkit object.
 
-The :func:`hashkit_free` frees any resources being consumed by the hashkit
-objects that were initialized with :func:`hashkit_create` or :func:`hashkit_clone`.
+The `hashkit_free` frees any resources being consumed by the hashkit objects
+that were initialized with `hashkit_create` or `hashkit_clone`.
 
-The :func:`hashkit_is_allocated` reports where the memory was allocated 
-for a hashkit object.
+The `hashkit_is_allocated` reports whether the memory was allocated for a hashkit
+object.
 
 RETURN VALUE
 ------------
 
-:func:`hashkit_create` and :func:`hashkit_clone` will return NULL on 
-failure or non-NULL on success.
+`hashkit_create` and `hashkit_clone` will return nullptr on failure or pointer
+to `hashkit_st` on success.
 
-:func:`hashkit_is_allocated` returns true if the memory for the hashkit
-object was allocated inside of :func:`hashkit_create` or 
-:func:`hashkit_clone`, otherwise it is false and was user-supplied memory.
+`hashkit_is_allocated` returns true if the memory for the hashkit object was
+allocated inside of `hashkit_create` or `hashkit_clone`, otherwise it is false
+and was user-supplied memory.
 
 SEE ALSO
 --------
@@ -58,6 +69,6 @@ SEE ALSO
 
 .. only:: html
 
-    * :doc:`../libhashkit`
+    * :doc:`index`
     * :doc:`hashkit_value`
     * :doc:`hashkit_function`