First merge of Trond's patches (cherry picking).
[m6w6/libmemcached] / libmemcached / memcached_get.h
1 /* LibMemcached
2 * Copyright (C) 2006-2009 Brian Aker
3 * All rights reserved.
4 *
5 * Use and distribution licensed under the BSD license. See
6 * the COPYING file in the parent directory for full text.
7 *
8 * Summary: Get functions for libmemcached
9 *
10 */
11
12 #ifndef LIBMEMCACHED_MEMCACHED_GET_H
13 #define LIBMEMCACHED_MEMCACHED_GET_H
14
15 #ifdef __cplusplus
16 extern "C" {
17 #endif
18
19 /* Public defines */
20 LIBMEMCACHED_API
21 char *memcached_get(memcached_st *ptr,
22 const char *key, size_t key_length,
23 size_t *value_length,
24 uint32_t *flags,
25 memcached_return_t *error);
26
27 LIBMEMCACHED_API
28 memcached_return_t memcached_mget(memcached_st *ptr,
29 const char * const *keys,
30 const size_t *key_length,
31 size_t number_of_keys);
32
33 LIBMEMCACHED_API
34 char *memcached_get_by_key(memcached_st *ptr,
35 const char *master_key, size_t master_key_length,
36 const char *key, size_t key_length,
37 size_t *value_length,
38 uint32_t *flags,
39 memcached_return_t *error);
40
41 LIBMEMCACHED_API
42 memcached_return_t memcached_mget_by_key(memcached_st *ptr,
43 const char *master_key, size_t
44 master_key_length,
45 const char * const *keys,
46 const size_t *key_length,
47 size_t number_of_keys);
48
49 LIBMEMCACHED_API
50 char *memcached_fetch(memcached_st *ptr,
51 char *key, size_t *key_length,
52 size_t *value_length, uint32_t *flags,
53 memcached_return_t *error);
54
55 LIBMEMCACHED_API
56 memcached_result_st *memcached_fetch_result(memcached_st *ptr,
57 memcached_result_st *result,
58 memcached_return_t *error);
59
60 LIBMEMCACHED_API
61 memcached_return_t memcached_mget_execute(memcached_st *ptr,
62 const char * const *keys,
63 const size_t *key_length,
64 size_t number_of_keys,
65 memcached_execute_fn *callback,
66 void *context,
67 unsigned int number_of_callbacks);
68
69 LIBMEMCACHED_API
70 memcached_return_t memcached_mget_execute_by_key(memcached_st *ptr,
71 const char *master_key,
72 size_t master_key_length,
73 const char * const *keys,
74 const size_t *key_length,
75 size_t number_of_keys,
76 memcached_execute_fn *callback,
77 void *context,
78 unsigned int number_of_callbacks);
79
80 #ifdef __cplusplus
81 }
82 #endif
83
84 #endif /* LIBMEMCACHED_MEMCACHED_GET_H */