This add AES support.
[m6w6/libmemcached] / libmemcached-1.0 / memcached.h
index d459d2c5c44150c7ff6afbb4d88e682c08b7c238..da8ac7e35de85f7aa683a9ac0a4df10e722d639e 100644 (file)
 #pragma once
 
 #include <inttypes.h>
+
+#ifdef __cplusplus
+#include <cstddef>
+#include <cstdlib>
+#else
+#include <stddef.h>
 #include <stdlib.h>
+#endif
+
 #include <sys/types.h>
 
 
 #include <libmemcached-1.0/visibility.h>
 #include <libmemcached-1.0/configure.h>
 #include <libmemcached-1.0/platform.h>
-#include <libmemcached-1.0/constants.h>
+
+#include <libmemcached-1.0/limits.h>
+#include <libmemcached-1.0/defaults.h>
+
+#include <libmemcached-1.0/types/behavior.h>
+#include <libmemcached-1.0/types/callback.h>
+#include <libmemcached-1.0/types/connection.h>
+#include <libmemcached-1.0/types/hash.h>
+#include <libmemcached-1.0/types/return.h>
+#include <libmemcached-1.0/types/server_distribution.h>
+
 #include <libmemcached-1.0/return.h>
+
 #include <libmemcached-1.0/types.h>
+#include <libmemcached-1.0/callbacks.h>
+#include <libmemcached-1.0/alloc.h>
+#include <libmemcached-1.0/triggers.h>
+
+#include <libhashkit-1.0/hashkit.h>
+
+#include <libmemcached-1.0/struct/callback.h>
+#include <libmemcached-1.0/struct/string.h>
+#include <libmemcached-1.0/struct/result.h>
+#include <libmemcached-1.0/struct/allocator.h>
+#include <libmemcached-1.0/struct/sasl.h>
+#include <libmemcached-1.0/struct/memcached.h>
+#include <libmemcached-1.0/struct/server.h>
+#include <libmemcached-1.0/struct/stat.h>
+
 #include <libmemcached-1.0/basic_string.h>
-#include <libmemcached-1.0/string.h>
 #include <libmemcached-1.0/error.h>
 #include <libmemcached-1.0/stats.h>
-#include <libhashkit-1.0/hashkit.h>
 
 // Everything above this line must be in the order specified.
 #include <libmemcached-1.0/allocators.h>
@@ -66,6 +98,7 @@
 #include <libmemcached-1.0/callback.h>
 #include <libmemcached-1.0/delete.h>
 #include <libmemcached-1.0/dump.h>
+#include <libmemcached-1.0/encoding_key.h>
 #include <libmemcached-1.0/exist.h>
 #include <libmemcached-1.0/fetch.h>
 #include <libmemcached-1.0/flush.h>
 #include <libmemcached-1.0/server_list.h>
 #include <libmemcached-1.0/storage.h>
 #include <libmemcached-1.0/strerror.h>
+#include <libmemcached-1.0/touch.h>
 #include <libmemcached-1.0/verbosity.h>
 #include <libmemcached-1.0/version.h>
 #include <libmemcached-1.0/sasl.h>
 
-struct memcached_st {
-  /**
-    @note these are static and should not change without a call to behavior.
-  */
-  struct {
-    bool is_purging:1;
-    bool is_processing_input:1;
-    bool is_time_for_rebuild:1;
-  } state;
-
-  struct {
-    // Everything below here is pretty static.
-    bool auto_eject_hosts:1;
-    bool binary_protocol:1;
-    bool buffer_requests:1;
-    bool hash_with_namespace:1;
-    bool no_block:1; // Don't block
-    bool no_reply:1;
-    bool randomize_replica_read:1;
-    bool support_cas:1;
-    bool tcp_nodelay:1;
-    bool use_sort_hosts:1;
-    bool use_udp:1;
-    bool verify_key:1;
-    bool tcp_keepalive:1;
-  } flags;
-
-  memcached_server_distribution_t distribution;
-  hashkit_st hashkit;
-  struct {
-    unsigned int version;
-  } server_info;
-  uint32_t number_of_hosts;
-  memcached_server_st *servers;
-  memcached_server_st *last_disconnected_server;
-  int32_t snd_timeout;
-  int32_t rcv_timeout;
-  uint32_t server_failure_limit;
-  uint32_t io_msg_watermark;
-  uint32_t io_bytes_watermark;
-  uint32_t io_key_prefetch;
-  uint32_t tcp_keepidle;
-  int32_t poll_timeout;
-  int32_t connect_timeout; // How long we will wait on connect() before we will timeout
-  int32_t retry_timeout;
-  int send_size;
-  int recv_size;
-  void *user_data;
-  uint64_t query_id;
-  uint32_t number_of_replicas;
-  memcached_result_st result;
-
-  struct {
-    bool weighted;
-    uint32_t continuum_count; // Ketama
-    uint32_t continuum_points_counter; // Ketama
-    time_t next_distribution_rebuild; // Ketama
-    memcached_continuum_item_st *continuum; // Ketama
-  } ketama;
-
-  struct memcached_virtual_bucket_t *virtual_bucket;
-
-  struct memcached_allocator_t allocators;
-
-  memcached_clone_fn on_clone;
-  memcached_cleanup_fn on_cleanup;
-  memcached_trigger_key_fn get_key_failure;
-  memcached_trigger_delete_key_fn delete_trigger;
-  memcached_callback_st *callbacks;
-  struct memcached_sasl_st sasl;
-  struct memcached_error_t *error_messages;
-  struct memcached_array_st *_namespace;
-  struct {
-    uint32_t initial_pool_size;
-    uint32_t max_pool_size;
-    int32_t version; // This is used by pool and others to determine if the memcached_st is out of date.
-    struct memcached_array_st *filename;
-  } configure;
-  struct {
-    bool is_allocated:1;
-  } options;
-
-};
+#include <libmemcached-1.0/deprecated_types.h>
 
 #ifdef __cplusplus
 extern "C" {