X-Git-Url: https://git.m6w6.name/?a=blobdiff_plain;f=docs%2Fsource%2Flibmemcached%2Fmemcached_memory_allocators.rst;h=6bde09bd61ce0de0662d20948529f2c3c294a541;hb=d089107e59bb1f5fb6fb567a4be33c4788b0181f;hp=9f8f98fde6f747949c67f15205ed113d0a8c5930;hpb=0a654f848e13d470fb07b044347f2e91d6941807;p=awesomized%2Flibmemcached diff --git a/docs/source/libmemcached/memcached_memory_allocators.rst b/docs/source/libmemcached/memcached_memory_allocators.rst index 9f8f98fd..6bde09bd 100644 --- a/docs/source/libmemcached/memcached_memory_allocators.rst +++ b/docs/source/libmemcached/memcached_memory_allocators.rst @@ -11,18 +11,56 @@ SYNOPSIS .. function:: memcached_return_t memcached_set_memory_allocators (memcached_st *ptr, memcached_malloc_fn mem_malloc, memcached_free_fn mem_free, memcached_realloc_fn mem_realloc, memcached_calloc_fn mem_calloc, void *context) + :param ptr: pointer to an initialized `memcached_st` struct + :param mem_malloc: pointer to a `memcached_malloc_fn` callback + :param mem_free: pointer to a `memcached_free_fn` callback + :param mem_realloc: pointer to a `memcached_realloc_fn` callback + :param mem_calloc: pointer to a `memcached_calloc_fn` callback + :param context: pointer to a user supplied context + :returns: `memcached_return_t` indicating success + .. function:: void memcached_get_memory_allocators (memcached_st *ptr, memcached_malloc_fn *mem_malloc, memcached_free_fn *mem_free, memcached_realloc_fn *mem_realloc, memcached_calloc_fn *mem_calloc) + :param ptr: pointer to an initialized `memcached_st` struct + :param mem_malloc: pointer to store the address of the `memcached_malloc_fn` callback + :param mem_free: pointer to store the address of the `memcached_free_fn` callback + :param mem_realloc: pointer to store the address of the `memcached_realloc_fn` callback + :param mem_calloc: pointer to store the address of the `memcached_calloc_fn` callback + .. function:: void * memcached_get_memory_allocators_context(const memcached_st *ptr) + :param ptr: pointer to an initialized `memcached_st` struct + :returns: pointer to the user supplied context + .. type:: void * (*memcached_malloc_fn) (memcached_st *ptr, const size_t size, void *context) + :param ptr: pointer to an initialized `memcached_st` struct + :param size: the number of bytes to allocate + :param context: pointer to the user supplied context + :returns: pointer to at least `size` bytes of allocated memory + .. type:: void * (*memcached_realloc_fn) (memcached_st *ptr, void *mem, const size_t size, void *context) + :param ptr: pointer to an initialized `memcached_st` struct + :param mem: pointer to previously allocated memory + :param size: the number of bytes to allocate + :param context: pointer to the user supplied context + :returns: pointer to at least `size` bytes of allocated memory + .. type:: void (*memcached_free_fn) (memcached_st *ptr, void *mem, void *context) + :param ptr: pointer to an initialized `memcached_st` struct + :param mem: pointer to previously allocated memory + :param context: pointer to the user supplied context + .. type:: void * (*memcached_calloc_fn) (memcached_st *ptr, size_t nelem, const size_t elsize, void *context) + :param ptr: pointer to an initialized `memcached_st` struct + :param nelem: number of elements to allocate + :param elsize: the number of bytes to allocate per element + :param context: pointer to the user supplied context + :returns: pointer to at least `elsize` \* `nelem` bytes of allocated and zeroed memory + DESCRIPTION ----------- @@ -51,13 +89,13 @@ NOTES ----- In version 0.38 all functions were modified to have a context void pointer -passed to them. This was so that customer allocators could have their own space +passed to them. This was so that custom allocators could have their own space for memory. RETURN VALUE ------------ -:func:`memcached_set_memory_allocators` return `MEMCACHED_SUCCESS` upon success, +:func:`memcached_set_memory_allocators` returns `MEMCACHED_SUCCESS` upon success, and `MEMCACHED_FAILURE` if you don't pass a complete set of function pointers. SEE ALSO