@@ -74,7 +74,7 @@ namespace Memcached {
7474 public delegate Memcached .ReturnCode KeyTrigger (Memcached .Context ptr , [CCode (array_length_type = "size_t ")] uint8[] key, Memcached.Result result);
7575 [CCode (cname = "memcached_trigger_delete_key_fn ", has_target = false )]
7676 public delegate Memcached .ReturnCode DeleteKeyTrigger (Memcached .Context ptr , [CCode (array_length_type = "size_t ")] uint8[] key);
77- [CCode (cname = "memcached_dump_fn ", has_target = false )]
77+ [CCode (cname = "memcached_dump_fn ")]
7878 public delegate Memcached .ReturnCode DumpCallback (Memcached .Context ptr , [CCode (array_length_type = "size_t ")] uint8[] key);
7979
8080 [SimpleType ]
@@ -85,6 +85,10 @@ namespace Memcached {
8585 [IntegerType (rank = 11 ), CCode (cname = "unsigned long long ")]
8686 public struct ulonglong {}
8787
88+ // options.h
89+ [CCode (cname = "libmemcached_check_configuration ")]
90+ public Memcached .ReturnCode check_configuration ([CCode (array_length_type = "size_t ")] uint8[] option_string, [CCode (array_length_type = "size_t ")] uint8[] error_buffer);
91+
8892 // version.h
8993 public string lib_version ();
9094
@@ -103,7 +107,7 @@ namespace Memcached {
103107 public void set_user_data< T > (T data);
104108 public T get_user_data< T > ();
105109 public Memcached . ReturnCode push (Memcached . Context source);
106- public Memcached . Instance server_instance_by_position (uint32 server_key);
110+ public unowned Memcached . Instance server_instance_by_position (uint32 server_key);
107111 public uint32 server_count ();
108112 public uint64 query_id ();
109113
@@ -113,13 +117,13 @@ namespace Memcached {
113117 public void * get_memory_allocator_context ();
114118
115119 // analyze.h
116- public Memcached . Analysis analyze (Memcached . Stat memc_stat, out Memcached . ReturnCode error);
120+ public Memcached . Analysis ? analyze (Memcached . Stat memc_stat, out Memcached . ReturnCode error);
117121
118122 // auto.h
119123 public Memcached . ReturnCode increment ([CCode (array_length_type = " size_t" )] uint8 [] key, uint32 offset, out uint64 value );
120124 public Memcached . ReturnCode decrement ([CCode (array_length_type = " size_t" )] uint8 [] key, uint32 offset, out uint64 value );
121- public Memcached . ReturnCode increment_by_key ([CCode (array_length_type = " size_t" )] uint8 [] group_key, [CCode (array_length_type = " size_t" )] uint8 [] key, uint64 offset, out uint64 value );
122- public Memcached . ReturnCode decrement_by_key ([CCode (array_length_type = " size_t" )] uint8 [] group_key, [CCode (array_length_type = " size_t" )] uint8 [] key, uint64 offset, out uint64 value );
125+ public Memcached . ReturnCode increment_by_key ([CCode (array_length_type = " size_t" )] uint8 [] group_key, [CCode (array_length_type = " size_t" )] uint8 [] key, uint32 offset, out uint64 value );
126+ public Memcached . ReturnCode decrement_by_key ([CCode (array_length_type = " size_t" )] uint8 [] group_key, [CCode (array_length_type = " size_t" )] uint8 [] key, uint32 offset, out uint64 value );
123127 public Memcached . ReturnCode increment_with_initial ([CCode (array_length_type = " size_t" )] uint8 [] key, uint64 offset, uint64 initial, time_t expiration, out uint64 value );
124128 public Memcached . ReturnCode decrement_with_initial ([CCode (array_length_type = " size_t" )] uint8 [] key, uint64 offset, uint64 initial, time_t expiration, out uint64 value );
125129 public Memcached . ReturnCode increment_with_initial_by_key ([CCode (array_length_type = " size_t" )] uint8 [] group_key, [CCode (array_length_type = " size_t" )] uint8 [] key, uint64 offset, uint64 initial, time_t expiration, out uint64 value );
@@ -134,21 +138,23 @@ namespace Memcached {
134138 public Memcached . Hash get_key_hash ();
135139 public Memcached . ReturnCode set_distribution_hash (Memcached . Hash type);
136140 public Memcached . Hash get_distribution_hash ();
137- public Memcached . ReturnCode bucket_set (uint32 [] host_map, uint32 [] forward_map, uint32 buckets, uint32 replicas);
141+ public Memcached . ReturnCode bucket_set ([ CCode (array_length = false )] uint32 [] host_map, [ CCode (array_length = false )] uint32 [] forward_map, uint32 buckets, uint32 replicas);
138142
139143 // callback.h
140- public Memcached . ReturnCode callback_set< T > (Memcached . Callback flag, T data);
141- public T callback_get< T > (Memcached . Callback flag, out Memcached . ReturnCode error);
144+ public Memcached . ReturnCode callback_set (Memcached . Callback flag, void * data);
145+ public void * callback_get (Memcached . Callback flag, out Memcached . ReturnCode error);
142146
143147 // delete.h
144148 public Memcached . ReturnCode @delete ([CCode (array_length_type = " size_t" )] uint8 [] key, time_t expiration);
145149 public Memcached . ReturnCode delete_by_key ([CCode (array_length_type = " size_t" )] uint8 [] group_key, [CCode (array_length_type = " size_t" )] uint8 [] key, time_t expiration);
146150
147151 // dump.h
148152 [CCode (cname = " memcached_dump" )]
149- private Memcached . ReturnCode _dump (ref Memcached . DumpCallback function, uint32 number_of_callbacks);
150- public Memcached . ReturnCode dump (owned Memcached . DumpCallback function) {
151- return this . _dump (ref function, 1 );
153+ private Memcached . ReturnCode _dump (Memcached . DumpCallback function, uint32 number_of_callbacks);
154+ [CCode (cname = " memcached_dump_wrapper" )]
155+ public Memcached . ReturnCode dump (Memcached . DumpCallback function) {
156+ var _function = &function;
157+ return this . _dump ((Memcached . DumpCallback ) _function, 1 );
152158 }
153159
154160 // encoding_key.h
@@ -167,9 +173,11 @@ namespace Memcached {
167173
168174 // fetch.h
169175 [CCode (cname = " memcached_fetch_execute" )]
170- private Memcached . ReturnCode _fetch_execute (ref Memcached . ExecuteCallback callback, uint32 number_of_callbacks);
171- public Memcached . ReturnCode fetch_execute (owned Memcached . ExecuteCallback callback) {
172- return this . _fetch_execute (ref callback, 1 );
176+ private Memcached . ReturnCode _fetch_execute (Memcached . ExecuteCallback callback, uint32 number_of_callbacks);
177+ [CCode (cname = " memcached_fetch_execute_wrapper" )]
178+ public Memcached . ReturnCode fetch_execute (Memcached . ExecuteCallback callback) {
179+ var _callback = &callback;
180+ return this . _fetch_execute ((Memcached . ExecuteCallback ) _callback, 1 );
173181 }
174182
175183 // flush_buffers.h
@@ -185,28 +193,29 @@ namespace Memcached {
185193 [CCode (array_length_pos = 2.5 , array_length_type = " size_t" )]
186194 public uint8 []? get_by_key ([CCode (array_length_type = " size_t" )] uint8 [] group_key, [CCode (array_length_type = " size_t" )] uint8 [] key, out uint32 flags, out Memcached . ReturnCode error);
187195 public Memcached . ReturnCode mget_by_key ([CCode (array_length_type = " size_t" )] uint8 [] group_key, [CCode (array_length_type = " size_t" , array_length_pos = 3.5 )] uint8 * [] keys, [CCode (array_length = false )] size_t[] keys_length);
188- [Deprecated (since = " 0.50" , replacement = " fetch_result" ), CCode (array_length_pos = 1.5 , array_length_type = " size_t" )]
196+ [Version (deprecated = true , deprecated_since = " 0.50" , replacement = " fetch_result" ), CCode (array_length_pos = 1.5 , array_length_type = " size_t" )]
189197 public uint8 []? fetch ([CCode (array_length_type = " size_t" )] uint8 [] key, out uint32 flags, out Memcached . ReturnCode error);
190198 public Memcached . Result ? fetch_result (Memcached . Result ? result, out Memcached . ReturnCode error);
191199 [CCode (cname = " memcached_mget_execute" )]
192- private Memcached . ReturnCode _mget_execute ([CCode (array_length_type = " size_t" , array_length_pos = 2.5 )] uint8 * [] keys, [CCode (array_length = false )] size_t[] keys_length, ref Memcached . ExecuteCallback function, uint32 number_of_callbacks = 1 );
193- public Memcached . ReturnCode mget_execute (uint8 * [] keys, size_t[] keys_length, owned Memcached . ExecuteCallback function) {
194- return this . _mget_execute (keys, keys_length, ref function, 1 );
200+ private Memcached . ReturnCode _mget_execute ([CCode (array_length_type = " size_t" , array_length_pos = 2.5 )] uint8 * [] keys, [CCode (array_length = false )] size_t[] keys_length, Memcached . ExecuteCallback function, uint32 number_of_callbacks = 1 );
201+ [CCode (cname = " memcached_mget_execute_wrapper" )]
202+ public Memcached . ReturnCode mget_execute (uint8 * [] keys, size_t[] keys_length, Memcached . ExecuteCallback function) {
203+ var _function = &function;
204+ return this . _mget_execute (keys, keys_length, (Memcached . ExecuteCallback ) _function, 1 );
195205 }
196- public Memcached . ReturnCode _mget_execute_by_key ([CCode (array_length_type = " size_t" )] uint8 [] group_key, [CCode (array_length_type = " size_t" , array_length_pos = 3.5 )] uint8 * [] keys, [CCode (array_length = false )] size_t[] keys_length, ref Memcached . ExecuteCallback function, uint32 number_of_callbacks = 1 );
197- public Memcached . ReturnCode mget_execute_by_key (uint8 [] group_key, uint8 * [] keys, size_t[] keys_length, owned Memcached . ExecuteCallback function) {
198- return this . _mget_execute_by_key (group_key, keys, keys_length, ref function, 1 );
206+ [CCode (cname = " memcached_mget_execute_by_key" )]
207+ public Memcached . ReturnCode _mget_execute_by_key ([CCode (array_length_type = " size_t" )] uint8 [] group_key, [CCode (array_length_type = " size_t" , array_length_pos = 3.5 )] uint8 * [] keys, [CCode (array_length = false )] size_t[] keys_length, Memcached . ExecuteCallback function, uint32 number_of_callbacks = 1 );
208+ [CCode (cname = " memcached_mget_execute_by_key_wrapper" )]
209+ public Memcached . ReturnCode mget_execute_by_key (uint8 [] group_key, uint8 * [] keys, size_t[] keys_length, Memcached . ExecuteCallback function) {
210+ var _function = &function;
211+ return this . _mget_execute_by_key (group_key, keys, keys_length, (Memcached . ExecuteCallback ) _function, 1 );
199212 }
200213
201214 // hash.h
202215 public uint32 generate_hash_value ([CCode (array_length_type = " size_t" )] uint8 [] key, Memcached . Hash hash_algorithm);
203216 public uint32 generate_hash ([CCode (array_length_type = " size_t" )] uint8 [] key);
204217 public void autoeject ();
205218
206- // options.h
207- [CCode (cname = " libmemcached_check_configuration" )]
208- public Memcached . ReturnCode check_configuration ([CCode (array_length_type = " size_t" )] uint8 [] option_string, [CCode (array_length_type = " size_t" )] uint8 [] error_buffer);
209-
210219 // result.h
211220 public Memcached . Result result_create (Memcached . Result ? result = null );
212221
@@ -216,12 +225,14 @@ namespace Memcached {
216225
217226 // server.h
218227 [CCode (cname = " memcached_server_cursor" )]
219- private Memcached . ReturnCode _server_cursor (ref Memcached . ServerCallback function, uint32 number_of_callbacks);
220- public Memcached . ReturnCode server_cursor (owned Memcached . ServerCallback function) {
221- return this . _server_cursor (ref function, 1 );
228+ private Memcached . ReturnCode _server_cursor (Memcached . ServerCallback function, uint32 number_of_callbacks);
229+ [CCode (cname = " memcached_server_cursor_wrapper" )]
230+ public Memcached . ReturnCode server_cursor (Memcached . ServerCallback function) {
231+ var _function = &function;
232+ return this . _server_cursor ((Memcached . ServerCallback ) _function, 1 );
222233 }
223- public Memcached . Instance server_by_key ([CCode (array_length_type = " size_t" )] uint8 [] key, out Memcached . ReturnCode error);
224- public Memcached . Instance server_get_last_disconnected ();
234+ public unowned Memcached . Instance ? server_by_key ([CCode (array_length_type = " size_t" )] uint8 [] key, out Memcached . ReturnCode error);
235+ public unowned Memcached . Instance ? server_get_last_disconnect ();
225236 public Memcached . ReturnCode server_add_udp (string hostname, in_port_t port = Memcached . DEFAULT_PORT );
226237 public Memcached . ReturnCode server_add_unix_socket (string filename);
227238 public Memcached . ReturnCode server_add (string hostname, in_port_t port = Memcached . DEFAULT_PORT );
@@ -234,8 +245,9 @@ namespace Memcached {
234245
235246 // stat.h
236247 public void stat_free (Memcached . Stat memc_stat);
237- public Memcached . Stat stat (string args, out Memcached . ReturnCode error);
238- public string stat_get_value (Memcached . Stat memc_stat, out Memcached . ReturnCode error);
248+ public Memcached . Stat ? stat (string args, out Memcached . ReturnCode error);
249+ public string stat_get_value (Memcached . Stat memc_stat, string key, out Memcached . ReturnCode error);
250+ [CCode (array_null_terminated = true )]
239251 public string [] stat_get_keys (Memcached . Stat memc_stat, out Memcached . ReturnCode error);
240252 public Memcached . ReturnCode stat_execute (string args, Memcached . StatCallback func);
241253
@@ -256,8 +268,8 @@ namespace Memcached {
256268 public unowned string strerror (Memcached . ReturnCode rc);
257269
258270 // touch.h
259- public Memcached . ReturnCode touch ([CCode (array_length_type = " size_t" )] uint8 [] key, time_t expiration, uint32 flags );
260- public Memcached . ReturnCode touch_by_key ([CCode (array_length_type = " size_t" )] uint8 [] group_key, [CCode (array_length_type = " size_t" )] uint8 [] key, time_t expiration, uint32 flags );
271+ public Memcached . ReturnCode touch ([CCode (array_length_type = " size_t" )] uint8 [] key, time_t expiration);
272+ public Memcached . ReturnCode touch_by_key ([CCode (array_length_type = " size_t" )] uint8 [] group_key, [CCode (array_length_type = " size_t" )] uint8 [] key, time_t expiration);
261273
262274 // quit.h
263275 public void quit ();
@@ -278,9 +290,9 @@ namespace Memcached {
278290 }
279291
280292 // type/analysis.h
281- [SimpleType , CCode (cname = "memcached_analysis_st ", free_function = "memcached_analyze_free ")]
293+ [CCode (cname = "memcached_analysis_st ", has_copy_function = false , free_function = "memcached_analyze_free ")]
282294 public struct Analysis {
283- public Memcached . Context root;
295+ public unowned Memcached . Context root;
284296 public uint32 average_item_size;
285297 public uint32 longest_uptime;
286298 public uint32 least_free_server;
@@ -480,7 +492,7 @@ namespace Memcached {
480492 }
481493
482494 // parse.h
483- [Deprecated ( since = "0 .39 ", replacement = "Context .from_configuration ")]
495+ [Version ( deprecated = true , deprecated_since = "0 .39 ", replacement = "Context .from_configuration ")]
484496 public Memcached .ServerList servers_parse (string server_strings );
485497
486498 // server.h
@@ -510,7 +522,7 @@ namespace Memcached {
510522 }
511523
512524 // stat.h
513- [CCode (cname = "memcached_stat_st ")]
525+ [CCode (cname = "memcached_stat_st ", has_copy_function = false )]
514526 public struct Stat {
515527 ulong connection_structures;
516528 ulong curr_connections;
@@ -535,10 +547,10 @@ namespace Memcached {
535547 ulonglong get_hits;
536548 ulonglong get_misses;
537549 ulonglong limit_maxbytes;
538- #if VALA_0_26
539550 uint8 version[Memcached . VERSION_STRING_LENGTH ];
540- #endif
541551 void * __future;
542- Memcached . Context root;
552+ unowned Memcached . Context root;
553+
554+ public Memcached . ReturnCode servername (string args, string hostname, in_port_t port);
543555 }
544556}
0 commit comments