Remove how use instance (keep API intact)
[m6w6/libmemcached] / libmemcached / common.h
index 53481880d7cc5281b414c57016a060d7fe236c57..92f44de4f7198ac489eec4d2efa7ae7578703e8c 100644 (file)
 #include <cstdlib>
 #include <cstring>
 #include <ctime>
-#include <ctype.h>
+#include <cctype>
+#include <cerrno>
+#include <climits>
 #else
 #include <stdio.h>
 #include <stdlib.h>
 #include <string.h>
 #include <time.h>
+#include <errno.h>
+#include <limits.h>
 #endif
 
-#include <errno.h>
 #include <fcntl.h>
-#include <limits.h>
 #include <sys/types.h>
 #include <unistd.h>
 
@@ -71,6 +73,7 @@
 #include <libmemcached/watchpoint.h>
 #include <libmemcached/is.h>
 
+#include <libmemcached/instance.h>
 #include <libmemcached/server_instance.h>
 
 #ifdef HAVE_POLL_H
@@ -104,14 +107,16 @@ memcached_return_t memcached_server_execute(memcached_st *ptr,
 #include <libmemcached/io.h>
 #ifdef __cplusplus
 #include <libmemcached/string.hpp>
+#include <libmemcached/memcached/protocol_binary.h>
 #include <libmemcached/io.hpp>
 #include <libmemcached/udp.hpp>
 #include <libmemcached/do.hpp>
-#include <libmemcached/close_socket.hpp>
+#include <libmemcached/socket.hpp>
 #include <libmemcached/connect.hpp>
 #include <libmemcached/allocators.hpp>
 #include <libmemcached/hash.hpp>
 #include <libmemcached/quit.hpp>
+#include <libmemcached/instance.hpp>
 #include <libmemcached/server.hpp>
 #include <libmemcached/behavior.hpp>
 #include <libmemcached/sasl.hpp>
@@ -120,7 +125,6 @@ memcached_return_t memcached_server_execute(memcached_st *ptr,
 #include <libmemcached/internal.h>
 #include <libmemcached/array.h>
 #include <libmemcached/libmemcached_probes.h>
-#include <libmemcached/memcached/protocol_binary.h>
 #include <libmemcached/byteorder.h>
 #include <libmemcached/initialize_query.h>
 #ifdef __cplusplus
@@ -134,6 +138,8 @@ memcached_return_t memcached_server_execute(memcached_st *ptr,
 #include <libmemcached/assert.hpp>
 #include <libmemcached/server.hpp>
 #include <libmemcached/key.hpp>
+#include <libmemcached/encoding_key.h>
+#include <libmemcached/result.h>
 #endif
 
 #include <libmemcached/continuum.hpp>
@@ -165,8 +171,13 @@ memcached_return_t run_distribution(memcached_st *ptr);
 #define memcached_server_response_decrement(A) (A)->cursor_active--
 #define memcached_server_response_reset(A) (A)->cursor_active=0
 
-LIBMEMCACHED_LOCAL
-memcached_return_t memcached_purge(memcached_server_write_instance_st ptr);
+#define memcached_instance_response_increment(A) (A)->cursor_active++
+#define memcached_instance_response_decrement(A) (A)->cursor_active--
+#define memcached_instance_response_reset(A) (A)->cursor_active=0
+
+bool memcached_purge(memcached_server_write_instance_st ptr);
+
+struct memcached_instance_st* memcached_instance_by_position(const memcached_st *ptr, uint32_t server_key);
 
 #ifdef __cplusplus
 }