jenkins-promote-staging-trunk-libmemcached-15
[awesomized/libmemcached] / libmemcached-1.0 / memcached.h
1 /* vim:expandtab:shiftwidth=2:tabstop=2:smarttab:
2 *
3 * Libmemcached library
4 *
5 * Copyright (C) 2011 Data Differential, http://datadifferential.com/
6 * Copyright (C) 2006-2009 Brian Aker All rights reserved.
7 *
8 * Redistribution and use in source and binary forms, with or without
9 * modification, are permitted provided that the following conditions are
10 * met:
11 *
12 * * Redistributions of source code must retain the above copyright
13 * notice, this list of conditions and the following disclaimer.
14 *
15 * * Redistributions in binary form must reproduce the above
16 * copyright notice, this list of conditions and the following disclaimer
17 * in the documentation and/or other materials provided with the
18 * distribution.
19 *
20 * * The names of its contributors may not be used to endorse or
21 * promote products derived from this software without specific prior
22 * written permission.
23 *
24 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
25 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
26 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
27 * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
28 * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
29 * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
30 * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
31 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
32 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
33 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
34 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
35 *
36 */
37
38 #pragma once
39
40 #include <inttypes.h>
41
42 #ifdef __cplusplus
43 #include <cstddef>
44 #include <cstdlib>
45 #else
46 #include <stddef.h>
47 #include <stdlib.h>
48 #endif
49
50 #include <sys/types.h>
51
52
53 #if !defined(__cplusplus)
54 # include <stdbool.h>
55 #endif
56
57 #include <libmemcached-1.0/visibility.h>
58 #include <libmemcached-1.0/configure.h>
59 #include <libmemcached-1.0/platform.h>
60
61 #include <libmemcached-1.0/limits.h>
62 #include <libmemcached-1.0/defaults.h>
63
64 #include <libmemcached-1.0/types/behavior.h>
65 #include <libmemcached-1.0/types/callback.h>
66 #include <libmemcached-1.0/types/connection.h>
67 #include <libmemcached-1.0/types/hash.h>
68 #include <libmemcached-1.0/types/return.h>
69 #include <libmemcached-1.0/types/server_distribution.h>
70
71 #include <libmemcached-1.0/return.h>
72
73 #include <libmemcached-1.0/types.h>
74 #include <libmemcached-1.0/callbacks.h>
75 #include <libmemcached-1.0/alloc.h>
76 #include <libmemcached-1.0/triggers.h>
77
78 #include <libhashkit-1.0/hashkit.h>
79
80 #include <libmemcached-1.0/struct/callback.h>
81 #include <libmemcached-1.0/struct/string.h>
82 #include <libmemcached-1.0/struct/result.h>
83 #include <libmemcached-1.0/struct/allocator.h>
84 #include <libmemcached-1.0/struct/sasl.h>
85 #include <libmemcached-1.0/struct/memcached.h>
86 #include <libmemcached-1.0/struct/server.h>
87 #include <libmemcached-1.0/struct/stat.h>
88
89 #include <libmemcached-1.0/basic_string.h>
90 #include <libmemcached-1.0/error.h>
91 #include <libmemcached-1.0/stats.h>
92
93 // Everything above this line must be in the order specified.
94 #include <libmemcached-1.0/allocators.h>
95 #include <libmemcached-1.0/analyze.h>
96 #include <libmemcached-1.0/auto.h>
97 #include <libmemcached-1.0/behavior.h>
98 #include <libmemcached-1.0/callback.h>
99 #include <libmemcached-1.0/delete.h>
100 #include <libmemcached-1.0/dump.h>
101 #include <libmemcached-1.0/encoding_key.h>
102 #include <libmemcached-1.0/exist.h>
103 #include <libmemcached-1.0/fetch.h>
104 #include <libmemcached-1.0/flush.h>
105 #include <libmemcached-1.0/flush_buffers.h>
106 #include <libmemcached-1.0/get.h>
107 #include <libmemcached-1.0/hash.h>
108 #include <libmemcached-1.0/options.h>
109 #include <libmemcached-1.0/parse.h>
110 #include <libmemcached-1.0/quit.h>
111 #include <libmemcached-1.0/result.h>
112 #include <libmemcached-1.0/server.h>
113 #include <libmemcached-1.0/server_list.h>
114 #include <libmemcached-1.0/storage.h>
115 #include <libmemcached-1.0/strerror.h>
116 #include <libmemcached-1.0/touch.h>
117 #include <libmemcached-1.0/verbosity.h>
118 #include <libmemcached-1.0/version.h>
119 #include <libmemcached-1.0/sasl.h>
120
121 #include <libmemcached-1.0/deprecated_types.h>
122
123 #ifdef __cplusplus
124 extern "C" {
125 #endif
126
127 LIBMEMCACHED_API
128 void memcached_servers_reset(memcached_st *ptr);
129
130 LIBMEMCACHED_API
131 memcached_st *memcached_create(memcached_st *ptr);
132
133 LIBMEMCACHED_API
134 memcached_st *memcached(const char *string, size_t string_length);
135
136 LIBMEMCACHED_API
137 void memcached_free(memcached_st *ptr);
138
139 LIBMEMCACHED_API
140 memcached_return_t memcached_reset(memcached_st *ptr);
141
142 LIBMEMCACHED_API
143 void memcached_reset_last_disconnected_server(memcached_st *ptr);
144
145 LIBMEMCACHED_API
146 memcached_st *memcached_clone(memcached_st *clone, const memcached_st *ptr);
147
148 LIBMEMCACHED_API
149 void *memcached_get_user_data(const memcached_st *ptr);
150
151 LIBMEMCACHED_API
152 void *memcached_set_user_data(memcached_st *ptr, void *data);
153
154 LIBMEMCACHED_API
155 memcached_return_t memcached_push(memcached_st *destination, const memcached_st *source);
156
157 LIBMEMCACHED_API
158 memcached_server_instance_st memcached_server_instance_by_position(const memcached_st *ptr, uint32_t server_key);
159
160 LIBMEMCACHED_API
161 uint32_t memcached_server_count(const memcached_st *);
162
163 LIBMEMCACHED_API
164 uint64_t memcached_query_id(const memcached_st *);
165
166 #ifdef __cplusplus
167 } // extern "C"
168 #endif