hashkit_clone3
Libhashkit documentation
Usage
- #include <libhashkit-1.0/hashkit.h>
-
Compile and link with -lhashkit
- typedef struct hashkit_st hashkit_st
- hashkit_st *hashkit_create(hashkit_st *hash)
-
Parameters-
hash-- memory address of ahashkit_ststruct; if a nullptr is passed, the struct will be dynamically allocated by libhashkit
Returns-
pointer to initialized
hashkit_ststructure
- hashkit_st *hashkit_clone(hashkit_st *destination, const hashkit_st *ptr)
-
Parameters-
- •
-
destination-- memory address of ahashkit_ststruct; if a nullptr is passed, the struct will be dynamically allocated by libhashkit
- •
-
ptr-- pointer of thehashkit_ststruct to copy
Returns-
pointer to a
hashkit_ststructure (destination, if not nullptr), initialized fromptr
- void hashkit_free(hashkit_st *hash)
-
Parameters-
hash-- pointer to an initializedhashkit_ststruct
- bool hashkit_is_allocated(const hashkit_st *hash)
-
Parameters-
hash-- pointer to an initializedhashkit_ststruct
Returns-
bool, whether the
hashstruct was dynamically allocated
Overview
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 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 hashkit_free() frees any resources being consumed by the hashkit objects that were initialized with hashkit_create() or hashkit_clone().
The hashkit_is_allocated() reports whether the memory was allocated for a hashkit object.
Return value
hashkit_create() and hashkit_clone() will return nullptr on failure or pointer to hashkit_st on success.
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.
Releases
9 releases since Debian 6.0 (Squeeze); the text changed 5 times.