1 #ifndef FUTURE_VALUE_H
2 #define FUTURE_VALUE_H
3 
4 #include <bson.h>
5 #include <mongoc.h>
6 
7 
8 #include "mongoc-server-description.h"
9 #include "mongoc-topology-private.h"
10 
11 
12 /**************************************************
13  *
14  * Generated by build/generate-future-functions.py.
15  *
16  * DO NOT EDIT THIS FILE.
17  *
18  *************************************************/
19 /* clang-format off */
20 
21 
22 typedef char * char_ptr;
23 typedef char ** char_ptr_ptr;
24 typedef const char * const_char_ptr;
25 typedef bson_error_t * bson_error_ptr;
26 typedef bson_t * bson_ptr;
27 typedef const bson_t * const_bson_ptr;
28 typedef const bson_t ** const_bson_ptr_ptr;
29 typedef mongoc_bulk_operation_t * mongoc_bulk_operation_ptr;
30 typedef mongoc_client_t * mongoc_client_ptr;
31 typedef mongoc_collection_t * mongoc_collection_ptr;
32 typedef mongoc_cursor_t * mongoc_cursor_ptr;
33 typedef mongoc_database_t * mongoc_database_ptr;
34 typedef mongoc_gridfs_file_t * mongoc_gridfs_file_ptr;
35 typedef mongoc_gridfs_t * mongoc_gridfs_ptr;
36 typedef mongoc_iovec_t * mongoc_iovec_ptr;
37 typedef const mongoc_index_opt_t * const_mongoc_index_opt_t;
38 typedef mongoc_server_description_t * mongoc_server_description_ptr;
39 typedef mongoc_topology_t * mongoc_topology_ptr;
40 typedef mongoc_write_concern_t * mongoc_write_concern_ptr;
41 typedef const mongoc_find_and_modify_opts_t * const_mongoc_find_and_modify_opts_ptr;
42 typedef const mongoc_iovec_t * const_mongoc_iovec_ptr;
43 typedef const mongoc_read_prefs_t * const_mongoc_read_prefs_ptr;
44 typedef const mongoc_write_concern_t * const_mongoc_write_concern_ptr;
45 
46 typedef enum {
47    future_value_no_type = 0,
48    future_value_bool_type,
49    future_value_char_ptr_type,
50    future_value_char_ptr_ptr_type,
51    future_value_int_type,
52    future_value_int64_t_type,
53    future_value_size_t_type,
54    future_value_ssize_t_type,
55    future_value_uint32_t_type,
56    future_value_const_char_ptr_type,
57    future_value_bson_error_ptr_type,
58    future_value_bson_ptr_type,
59    future_value_const_bson_ptr_type,
60    future_value_const_bson_ptr_ptr_type,
61    future_value_mongoc_bulk_operation_ptr_type,
62    future_value_mongoc_client_ptr_type,
63    future_value_mongoc_collection_ptr_type,
64    future_value_mongoc_cursor_ptr_type,
65    future_value_mongoc_database_ptr_type,
66    future_value_mongoc_gridfs_file_ptr_type,
67    future_value_mongoc_gridfs_ptr_type,
68    future_value_mongoc_insert_flags_t_type,
69    future_value_mongoc_iovec_ptr_type,
70    future_value_mongoc_query_flags_t_type,
71    future_value_const_mongoc_index_opt_t_type,
72    future_value_mongoc_server_description_ptr_type,
73    future_value_mongoc_ss_optype_t_type,
74    future_value_mongoc_topology_ptr_type,
75    future_value_mongoc_write_concern_ptr_type,
76    future_value_const_mongoc_find_and_modify_opts_ptr_type,
77    future_value_const_mongoc_iovec_ptr_type,
78    future_value_const_mongoc_read_prefs_ptr_type,
79    future_value_const_mongoc_write_concern_ptr_type,
80    future_value_void_type,
81 
82 } future_value_type_t;
83 
84 typedef struct _future_value_t
85 {
86    future_value_type_t type;
87    union {
88       bool bool_value;
89       char_ptr char_ptr_value;
90       char_ptr_ptr char_ptr_ptr_value;
91       int int_value;
92       int64_t int64_t_value;
93       size_t size_t_value;
94       ssize_t ssize_t_value;
95       uint32_t uint32_t_value;
96       const_char_ptr const_char_ptr_value;
97       bson_error_ptr bson_error_ptr_value;
98       bson_ptr bson_ptr_value;
99       const_bson_ptr const_bson_ptr_value;
100       const_bson_ptr_ptr const_bson_ptr_ptr_value;
101       mongoc_bulk_operation_ptr mongoc_bulk_operation_ptr_value;
102       mongoc_client_ptr mongoc_client_ptr_value;
103       mongoc_collection_ptr mongoc_collection_ptr_value;
104       mongoc_cursor_ptr mongoc_cursor_ptr_value;
105       mongoc_database_ptr mongoc_database_ptr_value;
106       mongoc_gridfs_file_ptr mongoc_gridfs_file_ptr_value;
107       mongoc_gridfs_ptr mongoc_gridfs_ptr_value;
108       mongoc_insert_flags_t mongoc_insert_flags_t_value;
109       mongoc_iovec_ptr mongoc_iovec_ptr_value;
110       mongoc_query_flags_t mongoc_query_flags_t_value;
111       const_mongoc_index_opt_t const_mongoc_index_opt_t_value;
112       mongoc_server_description_ptr mongoc_server_description_ptr_value;
113       mongoc_ss_optype_t mongoc_ss_optype_t_value;
114       mongoc_topology_ptr mongoc_topology_ptr_value;
115       mongoc_write_concern_ptr mongoc_write_concern_ptr_value;
116       const_mongoc_find_and_modify_opts_ptr const_mongoc_find_and_modify_opts_ptr_value;
117       const_mongoc_iovec_ptr const_mongoc_iovec_ptr_value;
118       const_mongoc_read_prefs_ptr const_mongoc_read_prefs_ptr_value;
119       const_mongoc_write_concern_ptr const_mongoc_write_concern_ptr_value;
120 
121    };
122 } future_value_t;
123 
124 future_value_t *future_value_new ();
125 
126 #ifdef __clang__
127 #pragma clang diagnostic push
128 #pragma clang diagnostic ignored "-Wunused-function"
129 #endif
130 
131 void future_value_set_void (future_value_t *future_value);
132 
133 void future_value_get_void (future_value_t *future_value);
134 
135 
136 void
137 future_value_set_bool(
138    future_value_t *future_value,
139    bool value);
140 
141 bool
142 future_value_get_bool (
143    future_value_t *future_value);
144 
145 void
146 future_value_set_char_ptr(
147    future_value_t *future_value,
148    char_ptr value);
149 
150 char_ptr
151 future_value_get_char_ptr (
152    future_value_t *future_value);
153 
154 void
155 future_value_set_char_ptr_ptr(
156    future_value_t *future_value,
157    char_ptr_ptr value);
158 
159 char_ptr_ptr
160 future_value_get_char_ptr_ptr (
161    future_value_t *future_value);
162 
163 void
164 future_value_set_int(
165    future_value_t *future_value,
166    int value);
167 
168 int
169 future_value_get_int (
170    future_value_t *future_value);
171 
172 void
173 future_value_set_int64_t(
174    future_value_t *future_value,
175    int64_t value);
176 
177 int64_t
178 future_value_get_int64_t (
179    future_value_t *future_value);
180 
181 void
182 future_value_set_size_t(
183    future_value_t *future_value,
184    size_t value);
185 
186 size_t
187 future_value_get_size_t (
188    future_value_t *future_value);
189 
190 void
191 future_value_set_ssize_t(
192    future_value_t *future_value,
193    ssize_t value);
194 
195 ssize_t
196 future_value_get_ssize_t (
197    future_value_t *future_value);
198 
199 void
200 future_value_set_uint32_t(
201    future_value_t *future_value,
202    uint32_t value);
203 
204 uint32_t
205 future_value_get_uint32_t (
206    future_value_t *future_value);
207 
208 void
209 future_value_set_const_char_ptr(
210    future_value_t *future_value,
211    const_char_ptr value);
212 
213 const_char_ptr
214 future_value_get_const_char_ptr (
215    future_value_t *future_value);
216 
217 void
218 future_value_set_bson_error_ptr(
219    future_value_t *future_value,
220    bson_error_ptr value);
221 
222 bson_error_ptr
223 future_value_get_bson_error_ptr (
224    future_value_t *future_value);
225 
226 void
227 future_value_set_bson_ptr(
228    future_value_t *future_value,
229    bson_ptr value);
230 
231 bson_ptr
232 future_value_get_bson_ptr (
233    future_value_t *future_value);
234 
235 void
236 future_value_set_const_bson_ptr(
237    future_value_t *future_value,
238    const_bson_ptr value);
239 
240 const_bson_ptr
241 future_value_get_const_bson_ptr (
242    future_value_t *future_value);
243 
244 void
245 future_value_set_const_bson_ptr_ptr(
246    future_value_t *future_value,
247    const_bson_ptr_ptr value);
248 
249 const_bson_ptr_ptr
250 future_value_get_const_bson_ptr_ptr (
251    future_value_t *future_value);
252 
253 void
254 future_value_set_mongoc_bulk_operation_ptr(
255    future_value_t *future_value,
256    mongoc_bulk_operation_ptr value);
257 
258 mongoc_bulk_operation_ptr
259 future_value_get_mongoc_bulk_operation_ptr (
260    future_value_t *future_value);
261 
262 void
263 future_value_set_mongoc_client_ptr(
264    future_value_t *future_value,
265    mongoc_client_ptr value);
266 
267 mongoc_client_ptr
268 future_value_get_mongoc_client_ptr (
269    future_value_t *future_value);
270 
271 void
272 future_value_set_mongoc_collection_ptr(
273    future_value_t *future_value,
274    mongoc_collection_ptr value);
275 
276 mongoc_collection_ptr
277 future_value_get_mongoc_collection_ptr (
278    future_value_t *future_value);
279 
280 void
281 future_value_set_mongoc_cursor_ptr(
282    future_value_t *future_value,
283    mongoc_cursor_ptr value);
284 
285 mongoc_cursor_ptr
286 future_value_get_mongoc_cursor_ptr (
287    future_value_t *future_value);
288 
289 void
290 future_value_set_mongoc_database_ptr(
291    future_value_t *future_value,
292    mongoc_database_ptr value);
293 
294 mongoc_database_ptr
295 future_value_get_mongoc_database_ptr (
296    future_value_t *future_value);
297 
298 void
299 future_value_set_mongoc_gridfs_file_ptr(
300    future_value_t *future_value,
301    mongoc_gridfs_file_ptr value);
302 
303 mongoc_gridfs_file_ptr
304 future_value_get_mongoc_gridfs_file_ptr (
305    future_value_t *future_value);
306 
307 void
308 future_value_set_mongoc_gridfs_ptr(
309    future_value_t *future_value,
310    mongoc_gridfs_ptr value);
311 
312 mongoc_gridfs_ptr
313 future_value_get_mongoc_gridfs_ptr (
314    future_value_t *future_value);
315 
316 void
317 future_value_set_mongoc_insert_flags_t(
318    future_value_t *future_value,
319    mongoc_insert_flags_t value);
320 
321 mongoc_insert_flags_t
322 future_value_get_mongoc_insert_flags_t (
323    future_value_t *future_value);
324 
325 void
326 future_value_set_mongoc_iovec_ptr(
327    future_value_t *future_value,
328    mongoc_iovec_ptr value);
329 
330 mongoc_iovec_ptr
331 future_value_get_mongoc_iovec_ptr (
332    future_value_t *future_value);
333 
334 void
335 future_value_set_mongoc_query_flags_t(
336    future_value_t *future_value,
337    mongoc_query_flags_t value);
338 
339 mongoc_query_flags_t
340 future_value_get_mongoc_query_flags_t (
341    future_value_t *future_value);
342 
343 void
344 future_value_set_const_mongoc_index_opt_t(
345    future_value_t *future_value,
346    const_mongoc_index_opt_t value);
347 
348 const_mongoc_index_opt_t
349 future_value_get_const_mongoc_index_opt_t (
350    future_value_t *future_value);
351 
352 void
353 future_value_set_mongoc_server_description_ptr(
354    future_value_t *future_value,
355    mongoc_server_description_ptr value);
356 
357 mongoc_server_description_ptr
358 future_value_get_mongoc_server_description_ptr (
359    future_value_t *future_value);
360 
361 void
362 future_value_set_mongoc_ss_optype_t(
363    future_value_t *future_value,
364    mongoc_ss_optype_t value);
365 
366 mongoc_ss_optype_t
367 future_value_get_mongoc_ss_optype_t (
368    future_value_t *future_value);
369 
370 void
371 future_value_set_mongoc_topology_ptr(
372    future_value_t *future_value,
373    mongoc_topology_ptr value);
374 
375 mongoc_topology_ptr
376 future_value_get_mongoc_topology_ptr (
377    future_value_t *future_value);
378 
379 void
380 future_value_set_mongoc_write_concern_ptr(
381    future_value_t *future_value,
382    mongoc_write_concern_ptr value);
383 
384 mongoc_write_concern_ptr
385 future_value_get_mongoc_write_concern_ptr (
386    future_value_t *future_value);
387 
388 void
389 future_value_set_const_mongoc_find_and_modify_opts_ptr(
390    future_value_t *future_value,
391    const_mongoc_find_and_modify_opts_ptr value);
392 
393 const_mongoc_find_and_modify_opts_ptr
394 future_value_get_const_mongoc_find_and_modify_opts_ptr (
395    future_value_t *future_value);
396 
397 void
398 future_value_set_const_mongoc_iovec_ptr(
399    future_value_t *future_value,
400    const_mongoc_iovec_ptr value);
401 
402 const_mongoc_iovec_ptr
403 future_value_get_const_mongoc_iovec_ptr (
404    future_value_t *future_value);
405 
406 void
407 future_value_set_const_mongoc_read_prefs_ptr(
408    future_value_t *future_value,
409    const_mongoc_read_prefs_ptr value);
410 
411 const_mongoc_read_prefs_ptr
412 future_value_get_const_mongoc_read_prefs_ptr (
413    future_value_t *future_value);
414 
415 void
416 future_value_set_const_mongoc_write_concern_ptr(
417    future_value_t *future_value,
418    const_mongoc_write_concern_ptr value);
419 
420 const_mongoc_write_concern_ptr
421 future_value_get_const_mongoc_write_concern_ptr (
422    future_value_t *future_value);
423 
424 
425 #ifdef __clang__
426 #pragma clang diagnostic pop
427 #endif
428 
429 #endif /* FUTURE_VALUE_H */
430