X-Git-Url: https://git.m6w6.name/?a=blobdiff_plain;f=libmemcached-1.0%2Fmemcached.h;h=da8ac7e35de85f7aa683a9ac0a4df10e722d639e;hb=983523c4536f12781533124cb8a00a4291b8cf79;hp=d459d2c5c44150c7ff6afbb4d88e682c08b7c238;hpb=fee8381b6b80398fcb6893860400ead6a598f15b;p=m6w6%2Flibmemcached diff --git a/libmemcached-1.0/memcached.h b/libmemcached-1.0/memcached.h index d459d2c5..da8ac7e3 100644 --- a/libmemcached-1.0/memcached.h +++ b/libmemcached-1.0/memcached.h @@ -38,7 +38,15 @@ #pragma once #include + +#ifdef __cplusplus +#include +#include +#else +#include #include +#endif + #include @@ -49,14 +57,38 @@ #include #include #include -#include + +#include +#include + +#include +#include +#include +#include +#include +#include + #include + #include +#include +#include +#include + +#include + +#include +#include +#include +#include +#include +#include +#include +#include + #include -#include #include #include -#include // Everything above this line must be in the order specified. #include @@ -66,6 +98,7 @@ #include #include #include +#include #include #include #include @@ -80,93 +113,12 @@ #include #include #include +#include #include #include #include -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 #ifdef __cplusplus extern "C" {