X-Git-Url: https://git.m6w6.name/?a=blobdiff_plain;f=docs%2Fmemcached_result_st.rst;h=9b60f1872fe908bfba56c7bad1d3b0acf16147ca;hb=1adc67d1609fd71308b822e153dcb08ad7fbf9c2;hp=fab6c4a41b0c93f1a398efb30c2f7293d33600e7;hpb=a6c3e3a3d04f379b1480c8c88a8eae17e54b1449;p=awesomized%2Flibmemcached diff --git a/docs/memcached_result_st.rst b/docs/memcached_result_st.rst index fab6c4a4..9b60f187 100644 --- a/docs/memcached_result_st.rst +++ b/docs/memcached_result_st.rst @@ -2,32 +2,31 @@ Working with result sets ======================== -.. index:: object: memcached_result_st - -Work with memcached_result_st - - -------- SYNOPSIS -------- #include -.. c:function:: memcached_result_st * memcached_result_create (memcached_st *ptr, memcached_result_st *result); +.. c:type:: memcached_result_st + +.. c:function:: memcached_result_st * memcached_result_create (memcached_st *ptr, memcached_result_st *result) -.. c:function:: void memcached_result_free (memcached_result_st *result); +.. c:function:: void memcached_result_free (memcached_result_st *result) -.. c:function:: const char * memcached_result_key_value (memcached_result_st *result); +.. c:function:: const char * memcached_result_key_value (memcached_result_st *result) -.. c:function:: size_t memcached_result_key_length (const memcached_result_st *result); +.. c:function:: size_t memcached_result_key_length (const memcached_result_st *result) -.. c:function:: const char *memcached_result_value (memcached_result_st *ptr); +.. c:function:: const char *memcached_result_value (memcached_result_st *ptr) -.. c:function:: size_t memcached_result_length (const memcached_result_st *ptr); +.. c:function:: char *memcached_result_take_value (memcached_result_st *ptr) + +.. c:function:: size_t memcached_result_length (const memcached_result_st *ptr) .. c:function:: uint32_t memcached_result_flags (const memcached_result_st *result) -.. c:function:: uint64_t memcached_result_cas (const memcached_result_st *result); +.. c:function:: uint64_t memcached_result_cas (const memcached_result_st *result) .. c:function:: memcached_return_t memcached_result_set_value (memcached_result_st *ptr, const char *value, size_t length) @@ -44,49 +43,54 @@ DESCRIPTION ----------- -libmemcached(3) can optionally return a memcached_result_st which acts as a -result object. The result objects have added benefits over the character -pointer returns, in that they are forward compatible with new return items -that future memcached servers may implement (the best current example of -this is the CAS return item). The structures can also be reused, which will -save on calls to malloc(3). It is suggested that you use result objects over -char \* return functions. +libmemcached(3) can optionally return a :c:type:`memcached_result_st` which +acts as a result object. The result objects have added benefits over the +character pointer returns, in that they are forward compatible with new +return items that future memcached servers may implement (the best current +example of this is the CAS return item). The structures can also be reused, +which will save on calls to malloc(3). It is suggested that you use result +objects over char \* return functions. -The structure of memcached_result_st has been encapsulated, you should not -write code to directly access members of the structure. +The structure of :c:type:`memcached_result_st` has been encapsulated, you should +not write code to directly access members of the structure. -memcached_result_create() will either allocate memory for a -memcached_result_st or will initialize a structure passed to it. +:c:func:`memcached_result_create` will either allocate memory for a +:c:type:`memcached_result_st` or will initialize a structure passed to it. -memcached_result_free() will deallocate any memory attached to the +:c:func:`memcached_result_free` will deallocate any memory attached to the structure. If the structure was also allocated, it will deallocate it. -memcached_result_key_value() returns the key value associated with the +:c:func:`memcached_result_key_value` returns the key value associated with the current result object. -memcached_result_key_length() returns the key length associated with the -current result object. +:c:func:`memcached_result_key_length` returns the key length associated with +the current result object. -memcached_result_value() returns the result value associated with the +:c:func:`memcached_result_value` returns the result value associated with the current result object. -memcached_result_length() returns the result length associated with the -current result object. +:c:func:`memcached_result_take_value` returns and hands over the result value +associated with the current result object. You must call free() to release this +value, unless you have made use of a custom allocator. Use of a custom +allocator requires that you create your own custom free() to release it. + +:c:func:`memcached_result_length` returns the result length associated with +the current result object. -memcached_result_flags() returns the flags associated with the +:c:func:`memcached_result_flags` returns the flags associated with the current result object. -memcached_result_cas() returns the cas associated with the +:c:func:`memcached_result_cas` returns the cas associated with the current result object. This value will only be available if the server tests it. -memcached_result_set_value() takes a byte array and a size and sets +:c:func:`memcached_result_set_value` takes a byte array and a size and sets the result to this value. This function is used for trigger responses. -void memcached_result_set_flags() takes a result structure and stores -a new value for the flags field. +:c:func:`memcached_result_set_flags` takes a result structure and stores a new +value for the flags field. -void memcached_result_set_expiration(A) takes a result structure and stores +:c:func:`memcached_result_set_expiration` takes a result structure and stores a new value for the expiration field (this is only used by read through triggers). @@ -101,8 +105,8 @@ RETURN Varies, see particular functions. All structures must have -memcached_result_free() called on them for cleanup purposes. Failure to -do this will result in leaked memory. +:c:func:`memcached_result_free` called on them for cleanup purposes. Failure +to do this will result in leaked memory. ----