1pub const BM_OK: u32 = 0;
4pub const BM_ERR_BADALLOC: u32 = 1;
5pub const BM_ERR_BADARG: u32 = 2;
6pub const BM_ERR_RANGE: u32 = 3;
7pub const BM_ERR_CPU: u32 = 4;
8pub const BM_ERR_SERIALFORMAT: u32 = 5;
9pub const BM_ERR_BAD_VALUE: u32 = 6;
10pub const BM_ERR_RANK_SELECT_IDX_MISSING: u32 = 7;
11pub const BM_ERR_DETACHED: u32 = 101;
12pub const BM_ERR_JVM_NOT_SUPPORTED: u32 = 102;
13pub const BM_ERR_JVM_OUT_OF_MEMORY: u32 = 103;
14pub const BM_OK_MSG: &'static [u8; 19usize] = b"BM-00: All correct\0";
15pub const BM_ERR_BADALLOC_MSG: &'static [u8; 24usize] = b"BM-01: Allocation error\0";
16pub const BM_ERR_BADARG_MSG: &'static [u8; 44usize] =
17 b"BM-02: Invalid or missing function argument\0";
18pub const BM_ERR_RANGE_MSG: &'static [u8; 32usize] = b"BM-03: Incorrect range or index\0";
19pub const BM_ERR_CPU_MSG: &'static [u8; 50usize] =
20 b"BM-04: Incorrect CPU vectorization (SIMD) version\0";
21pub const BM_ERR_SERIALFORMAT_MSG: &'static [u8; 34usize] = b"BM-05: Serialization format error\0";
22pub const BM_ERR_BAD_VALUE_MSG: &'static [u8; 17usize] = b"BM-06: Bad value\0";
23pub const BM_ERR_DETACHED_MSG: &'static [u8; 42usize] =
24 b"BM-101: Current thread no attached to JVM\0";
25pub const BM_ERR_JVM_NOT_SUPPORTED_MSG: &'static [u8; 34usize] =
26 b"BM-102: JVM version not supported\0";
27pub const BM_ERR_JVM_OUT_OF_MEMORY_MSG: &'static [u8; 28usize] = b"BM-103: Out of memory error\0";
28pub const BM_UNK_MSG: &'static [u8; 21usize] = b"BM-XX: Unknown error\0";
29pub const BM_SIMD_NO: u32 = 0;
30pub const BM_SIMD_SSE2: u32 = 1;
31pub const BM_SIMD_SSE42: u32 = 2;
32pub const BM_SIMD_AVX2: u32 = 5;
33pub const BM_TRUE: u32 = 1;
34pub const BM_FALSE: u32 = 0;
35pub type wchar_t = ::std::os::raw::c_int;
36#[repr(C)]
37#[repr(align(16))]
38#[derive(Debug, Copy, Clone)]
39pub struct max_align_t {
40 pub __clang_max_align_nonce1: ::std::os::raw::c_longlong,
41 pub __bindgen_padding_0: u64,
42 pub __clang_max_align_nonce2: u128,
43}
44#[test]
45fn bindgen_test_layout_max_align_t() {
46 assert_eq!(
47 ::core::mem::size_of::<max_align_t>(),
48 32usize,
49 concat!("Size of: ", stringify!(max_align_t))
50 );
51 assert_eq!(
52 ::core::mem::align_of::<max_align_t>(),
53 16usize,
54 concat!("Alignment of ", stringify!(max_align_t))
55 );
56 assert_eq!(
57 unsafe {
58 &(*(::core::ptr::null::<max_align_t>())).__clang_max_align_nonce1 as *const _ as usize
59 },
60 0usize,
61 concat!(
62 "Offset of field: ",
63 stringify!(max_align_t),
64 "::",
65 stringify!(__clang_max_align_nonce1)
66 )
67 );
68 assert_eq!(
69 unsafe {
70 &(*(::core::ptr::null::<max_align_t>())).__clang_max_align_nonce2 as *const _ as usize
71 },
72 16usize,
73 concat!(
74 "Offset of field: ",
75 stringify!(max_align_t),
76 "::",
77 stringify!(__clang_max_align_nonce2)
78 )
79 );
80}
81#[repr(C)]
82#[derive(Debug, Copy, Clone)]
83pub struct BM_bvector_statistics {
84 pub bit_blocks: usize,
85 pub gap_blocks: usize,
86 pub max_serialize_mem: usize,
87 pub memory_used: usize,
88}
89#[test]
90fn bindgen_test_layout_BM_bvector_statistics() {
91 assert_eq!(
92 ::core::mem::size_of::<BM_bvector_statistics>(),
93 32usize,
94 concat!("Size of: ", stringify!(BM_bvector_statistics))
95 );
96 assert_eq!(
97 ::core::mem::align_of::<BM_bvector_statistics>(),
98 8usize,
99 concat!("Alignment of ", stringify!(BM_bvector_statistics))
100 );
101 assert_eq!(
102 unsafe {
103 &(*(::core::ptr::null::<BM_bvector_statistics>())).bit_blocks as *const _ as usize
104 },
105 0usize,
106 concat!(
107 "Offset of field: ",
108 stringify!(BM_bvector_statistics),
109 "::",
110 stringify!(bit_blocks)
111 )
112 );
113 assert_eq!(
114 unsafe {
115 &(*(::core::ptr::null::<BM_bvector_statistics>())).gap_blocks as *const _ as usize
116 },
117 8usize,
118 concat!(
119 "Offset of field: ",
120 stringify!(BM_bvector_statistics),
121 "::",
122 stringify!(gap_blocks)
123 )
124 );
125 assert_eq!(
126 unsafe {
127 &(*(::core::ptr::null::<BM_bvector_statistics>())).max_serialize_mem as *const _
128 as usize
129 },
130 16usize,
131 concat!(
132 "Offset of field: ",
133 stringify!(BM_bvector_statistics),
134 "::",
135 stringify!(max_serialize_mem)
136 )
137 );
138 assert_eq!(
139 unsafe {
140 &(*(::core::ptr::null::<BM_bvector_statistics>())).memory_used as *const _ as usize
141 },
142 24usize,
143 concat!(
144 "Offset of field: ",
145 stringify!(BM_bvector_statistics),
146 "::",
147 stringify!(memory_used)
148 )
149 );
150}
151extern "C" {
152 pub fn BM_init(arg1: *mut ::core::ffi::c_void) -> ::std::os::raw::c_int;
153}
154extern "C" {
155 #[doc = "return copyright info string and version information."]
156 pub fn BM_version(
157 major: *mut ::std::os::raw::c_int,
158 minor: *mut ::std::os::raw::c_int,
159 patch: *mut ::std::os::raw::c_int,
160 ) -> *const ::std::os::raw::c_char;
161}
162extern "C" {
163 #[doc = "return SIMD version used to build binaries"]
164 #[doc = "one of BM_SIMD_* defines"]
165 pub fn BM_simd_version() -> ::std::os::raw::c_int;
166}
167extern "C" {
168 #[doc = "return error message by code"]
169 pub fn BM_error_msg(errcode: ::std::os::raw::c_int) -> *const ::std::os::raw::c_char;
170}
171extern "C" {
172 pub fn BM_bvector_construct(
173 h: *mut *mut ::core::ffi::c_void,
174 bv_max: ::std::os::raw::c_uint,
175 ) -> ::std::os::raw::c_int;
176}
177extern "C" {
178 pub fn BM_bvector_init(h: *mut ::core::ffi::c_void) -> ::std::os::raw::c_int;
179}
180extern "C" {
181 pub fn BM_bvector_construct_copy(
182 h: *mut *mut ::core::ffi::c_void,
183 hfrom: *mut ::core::ffi::c_void,
184 ) -> ::std::os::raw::c_int;
185}
186extern "C" {
187 pub fn BM_bvector_free(h: *mut ::core::ffi::c_void) -> ::std::os::raw::c_int;
188}
189extern "C" {
190 pub fn BM_bvector_get_size(
191 h: *mut ::core::ffi::c_void,
192 psize: *mut ::std::os::raw::c_uint,
193 ) -> ::std::os::raw::c_int;
194}
195extern "C" {
196 pub fn BM_bvector_set_size(
197 h: *mut ::core::ffi::c_void,
198 new_size: ::std::os::raw::c_uint,
199 ) -> ::std::os::raw::c_int;
200}
201extern "C" {
202 pub fn BM_bvector_swap(
203 h1: *mut ::core::ffi::c_void,
204 h2: *mut ::core::ffi::c_void,
205 ) -> ::std::os::raw::c_int;
206}
207extern "C" {
208 pub fn BM_bvector_set_bit(
209 h: *mut ::core::ffi::c_void,
210 i: ::std::os::raw::c_uint,
211 val: ::std::os::raw::c_int,
212 ) -> ::std::os::raw::c_int;
213}
214extern "C" {
215 pub fn BM_bvector_set_bits(
216 h: *mut ::core::ffi::c_void,
217 idx: *mut ::std::os::raw::c_uint,
218 idx_size: ::std::os::raw::c_uint,
219 ) -> ::std::os::raw::c_int;
220}
221extern "C" {
222 pub fn BM_bvector_set_bit_no_check(
223 h: *mut ::core::ffi::c_void,
224 i: ::std::os::raw::c_uint,
225 ) -> ::std::os::raw::c_int;
226}
227extern "C" {
228 pub fn BM_bvector_set_bit_conditional(
229 h: *mut ::core::ffi::c_void,
230 i: ::std::os::raw::c_uint,
231 val: ::std::os::raw::c_int,
232 condition: ::std::os::raw::c_int,
233 pchanged: *mut ::std::os::raw::c_int,
234 ) -> ::std::os::raw::c_int;
235}
236extern "C" {
237 pub fn BM_bvector_flip_bit(
238 h: *mut ::core::ffi::c_void,
239 i: ::std::os::raw::c_uint,
240 ) -> ::std::os::raw::c_int;
241}
242extern "C" {
243 pub fn BM_bvector_inc_bit(
244 h: *mut ::core::ffi::c_void,
245 i: ::std::os::raw::c_uint,
246 carry_over: *mut ::std::os::raw::c_int,
247 ) -> ::std::os::raw::c_int;
248}
249extern "C" {
250 pub fn BM_bvector_set(h: *mut ::core::ffi::c_void) -> ::std::os::raw::c_int;
251}
252extern "C" {
253 pub fn BM_bvector_set_range(
254 h: *mut ::core::ffi::c_void,
255 left: ::std::os::raw::c_uint,
256 right: ::std::os::raw::c_uint,
257 value: ::std::os::raw::c_int,
258 ) -> ::std::os::raw::c_int;
259}
260extern "C" {
261 pub fn BM_bvector_invert(h: *mut ::core::ffi::c_void) -> ::std::os::raw::c_int;
262}
263extern "C" {
264 pub fn BM_bvector_clear(
265 h: *mut ::core::ffi::c_void,
266 free_mem: ::std::os::raw::c_int,
267 ) -> ::std::os::raw::c_int;
268}
269extern "C" {
270 pub fn BM_bvector_extract_next(
271 h: *mut ::core::ffi::c_void,
272 i: ::std::os::raw::c_uint,
273 pnext: *mut ::std::os::raw::c_uint,
274 ) -> ::std::os::raw::c_int;
275}
276extern "C" {
277 pub fn BM_bvector_get_bit(
278 h: *mut ::core::ffi::c_void,
279 i: ::std::os::raw::c_uint,
280 pval: *mut ::std::os::raw::c_int,
281 ) -> ::std::os::raw::c_int;
282}
283extern "C" {
284 pub fn BM_bvector_count(
285 h: *mut ::core::ffi::c_void,
286 pcount: *mut ::std::os::raw::c_uint,
287 ) -> ::std::os::raw::c_int;
288}
289extern "C" {
290 pub fn BM_bvector_count_range(
291 h: *mut ::core::ffi::c_void,
292 left: ::std::os::raw::c_uint,
293 right: ::std::os::raw::c_uint,
294 pcount: *mut ::std::os::raw::c_uint,
295 ) -> ::std::os::raw::c_int;
296}
297extern "C" {
298 pub fn BM_bvector_any(
299 h: *mut ::core::ffi::c_void,
300 pval: *mut ::std::os::raw::c_int,
301 ) -> ::std::os::raw::c_int;
302}
303extern "C" {
304 pub fn BM_bvector_find(
305 h: *mut ::core::ffi::c_void,
306 from: ::std::os::raw::c_uint,
307 ppos: *mut ::std::os::raw::c_uint,
308 pfound: *mut ::std::os::raw::c_int,
309 ) -> ::std::os::raw::c_int;
310}
311extern "C" {
312 pub fn BM_bvector_find_reverse(
313 h: *mut ::core::ffi::c_void,
314 ppos: *mut ::std::os::raw::c_uint,
315 pfound: *mut ::std::os::raw::c_int,
316 ) -> ::std::os::raw::c_int;
317}
318extern "C" {
319 pub fn BM_bvector_find_rank(
320 h: *mut ::core::ffi::c_void,
321 rank: ::std::os::raw::c_uint,
322 from: ::std::os::raw::c_uint,
323 pidx: *mut ::std::os::raw::c_uint,
324 pfound: *mut ::std::os::raw::c_int,
325 ) -> ::std::os::raw::c_int;
326}
327extern "C" {
328 pub fn BM_bvector_get_first(
329 h: *mut ::core::ffi::c_void,
330 pi: *mut ::std::os::raw::c_uint,
331 pfound: *mut ::std::os::raw::c_int,
332 ) -> ::std::os::raw::c_int;
333}
334extern "C" {
335 pub fn BM_bvector_get_next(
336 h: *mut ::core::ffi::c_void,
337 i: ::std::os::raw::c_uint,
338 pnext: *mut ::std::os::raw::c_uint,
339 ) -> ::std::os::raw::c_int;
340}
341extern "C" {
342 pub fn BM_bvector_compare(
343 h1: *mut ::core::ffi::c_void,
344 h2: *mut ::core::ffi::c_void,
345 pres: *mut ::std::os::raw::c_int,
346 ) -> ::std::os::raw::c_int;
347}
348extern "C" {
349 pub fn BM_bvector_find_first_mismatch(
350 h1: *mut ::core::ffi::c_void,
351 h2: *mut ::core::ffi::c_void,
352 pi: *mut ::std::os::raw::c_uint,
353 pfound: *mut ::std::os::raw::c_int,
354 ) -> ::std::os::raw::c_int;
355}
356extern "C" {
357 pub fn BM_bvector_optimize(
358 h: *mut ::core::ffi::c_void,
359 opt_mode: ::std::os::raw::c_int,
360 pstat: *mut BM_bvector_statistics,
361 ) -> ::std::os::raw::c_int;
362}
363extern "C" {
364 pub fn BM_bvector_calc_stat(
365 h: *mut ::core::ffi::c_void,
366 pstat: *mut BM_bvector_statistics,
367 ) -> ::std::os::raw::c_int;
368}
369extern "C" {
370 pub fn BM_bvector_combine_operation(
371 hdst: *mut ::core::ffi::c_void,
372 hsrc: *mut ::core::ffi::c_void,
373 opcode: ::std::os::raw::c_int,
374 ) -> ::std::os::raw::c_int;
375}
376extern "C" {
377 pub fn BM_bvector_combine_AND(
378 hdst: *mut ::core::ffi::c_void,
379 hsrc: *mut ::core::ffi::c_void,
380 ) -> ::std::os::raw::c_int;
381}
382extern "C" {
383 pub fn BM_bvector_combine_AND_2sc(
384 hdst: *mut ::core::ffi::c_void,
385 hsrc1: *mut ::core::ffi::c_void,
386 hsrc2: *mut ::core::ffi::c_void,
387 compress: ::std::os::raw::c_int,
388 ) -> ::std::os::raw::c_int;
389}
390extern "C" {
391 pub fn BM_bvector_combine_OR(
392 hdst: *mut ::core::ffi::c_void,
393 hsrc: *mut ::core::ffi::c_void,
394 ) -> ::std::os::raw::c_int;
395}
396extern "C" {
397 pub fn BM_bvector_combine_OR_2sc(
398 hdst: *mut ::core::ffi::c_void,
399 hsrc1: *mut ::core::ffi::c_void,
400 hsrc2: *mut ::core::ffi::c_void,
401 compress: ::std::os::raw::c_int,
402 ) -> ::std::os::raw::c_int;
403}
404extern "C" {
405 pub fn BM_bvector_combine_SUB(
406 hdst: *mut ::core::ffi::c_void,
407 hsrc: *mut ::core::ffi::c_void,
408 ) -> ::std::os::raw::c_int;
409}
410extern "C" {
411 pub fn BM_bvector_combine_SUB_2sc(
412 hdst: *mut ::core::ffi::c_void,
413 hsrc1: *mut ::core::ffi::c_void,
414 hsrc2: *mut ::core::ffi::c_void,
415 compress: ::std::os::raw::c_int,
416 ) -> ::std::os::raw::c_int;
417}
418extern "C" {
419 pub fn BM_bvector_combine_XOR(
420 hdst: *mut ::core::ffi::c_void,
421 hsrc: *mut ::core::ffi::c_void,
422 ) -> ::std::os::raw::c_int;
423}
424extern "C" {
425 pub fn BM_bvector_combine_XOR_2sc(
426 hdst: *mut ::core::ffi::c_void,
427 hsrc1: *mut ::core::ffi::c_void,
428 hsrc2: *mut ::core::ffi::c_void,
429 compress: ::std::os::raw::c_int,
430 ) -> ::std::os::raw::c_int;
431}
432extern "C" {
433 pub fn BM_bvector_merge(
434 hdst: *mut ::core::ffi::c_void,
435 hsrc: *mut ::core::ffi::c_void,
436 ) -> ::std::os::raw::c_int;
437}
438extern "C" {
439 pub fn BM_bvector_rshift1(hdst: *mut ::core::ffi::c_void) -> ::std::os::raw::c_int;
440}
441extern "C" {
442 pub fn BM_bvector_combine_OR_arr(
443 hdst: *mut ::core::ffi::c_void,
444 arr_begin: *const ::std::os::raw::c_uint,
445 arr_end: *const ::std::os::raw::c_uint,
446 ) -> ::std::os::raw::c_int;
447}
448extern "C" {
449 pub fn BM_bvector_combine_XOR_arr(
450 hdst: *mut ::core::ffi::c_void,
451 arr_begin: *const ::std::os::raw::c_uint,
452 arr_end: *const ::std::os::raw::c_uint,
453 ) -> ::std::os::raw::c_int;
454}
455extern "C" {
456 pub fn BM_bvector_combine_SUB_arr(
457 hdst: *mut ::core::ffi::c_void,
458 arr_begin: *const ::std::os::raw::c_uint,
459 arr_end: *const ::std::os::raw::c_uint,
460 ) -> ::std::os::raw::c_int;
461}
462extern "C" {
463 pub fn BM_bvector_combine_AND_arr(
464 hdst: *mut ::core::ffi::c_void,
465 arr_begin: *const ::std::os::raw::c_uint,
466 arr_end: *const ::std::os::raw::c_uint,
467 ) -> ::std::os::raw::c_int;
468}
469extern "C" {
470 pub fn BM_bvector_combine_AND_arr_sorted(
471 hdst: *mut ::core::ffi::c_void,
472 arr_begin: *const ::std::os::raw::c_uint,
473 arr_end: *const ::std::os::raw::c_uint,
474 ) -> ::std::os::raw::c_int;
475}
476extern "C" {
477 pub fn BM_bvector_enumerator_construct(
478 h: *mut ::core::ffi::c_void,
479 peh: *mut *mut ::core::ffi::c_void,
480 ) -> ::std::os::raw::c_int;
481}
482extern "C" {
483 pub fn BM_bvector_enumerator_construct_from(
484 h: *mut ::core::ffi::c_void,
485 peh: *mut *mut ::core::ffi::c_void,
486 pos: ::std::os::raw::c_uint,
487 ) -> ::std::os::raw::c_int;
488}
489extern "C" {
490 pub fn BM_bvector_enumerator_free(eh: *mut ::core::ffi::c_void) -> ::std::os::raw::c_int;
491}
492extern "C" {
493 pub fn BM_bvector_enumerator_is_valid(
494 eh: *mut ::core::ffi::c_void,
495 pvalid: *mut ::std::os::raw::c_int,
496 ) -> ::std::os::raw::c_int;
497}
498extern "C" {
499 pub fn BM_bvector_enumerator_get_value(
500 eh: *mut ::core::ffi::c_void,
501 pvalue: *mut ::std::os::raw::c_uint,
502 ) -> ::std::os::raw::c_int;
503}
504extern "C" {
505 pub fn BM_bvector_enumerator_next(
506 eh: *mut ::core::ffi::c_void,
507 pvalid: *mut ::std::os::raw::c_int,
508 pvalue: *mut ::std::os::raw::c_uint,
509 ) -> ::std::os::raw::c_int;
510}
511extern "C" {
512 pub fn BM_bvector_enumerator_goto(
513 eh: *mut ::core::ffi::c_void,
514 pos: ::std::os::raw::c_uint,
515 pvalid: *mut ::std::os::raw::c_int,
516 pvalue: *mut ::std::os::raw::c_uint,
517 ) -> ::std::os::raw::c_int;
518}
519extern "C" {
520 pub fn BM_bvector_serialize(
521 h: *mut ::core::ffi::c_void,
522 buf: *mut ::std::os::raw::c_char,
523 buf_size: usize,
524 pblob_size: *mut usize,
525 ) -> ::std::os::raw::c_int;
526}
527extern "C" {
528 pub fn BM_bvector_deserialize(
529 h: *mut ::core::ffi::c_void,
530 buf: *const ::std::os::raw::c_char,
531 buf_size: usize,
532 ) -> ::std::os::raw::c_int;
533}
534extern "C" {
535 pub fn BM_bvector_count_AND(
536 h1: *mut ::core::ffi::c_void,
537 h2: *mut ::core::ffi::c_void,
538 pcount: *mut ::std::os::raw::c_uint,
539 ) -> ::std::os::raw::c_int;
540}
541extern "C" {
542 pub fn BM_bvector_any_AND(
543 h1: *mut ::core::ffi::c_void,
544 h2: *mut ::core::ffi::c_void,
545 pany: *mut ::std::os::raw::c_uint,
546 ) -> ::std::os::raw::c_int;
547}
548extern "C" {
549 pub fn BM_bvector_count_XOR(
550 h1: *mut ::core::ffi::c_void,
551 h2: *mut ::core::ffi::c_void,
552 pcount: *mut ::std::os::raw::c_uint,
553 ) -> ::std::os::raw::c_int;
554}
555extern "C" {
556 pub fn BM_bvector_any_XOR(
557 h1: *mut ::core::ffi::c_void,
558 h2: *mut ::core::ffi::c_void,
559 pany: *mut ::std::os::raw::c_uint,
560 ) -> ::std::os::raw::c_int;
561}
562extern "C" {
563 pub fn BM_bvector_count_SUB(
564 h1: *mut ::core::ffi::c_void,
565 h2: *mut ::core::ffi::c_void,
566 pcount: *mut ::std::os::raw::c_uint,
567 ) -> ::std::os::raw::c_int;
568}
569extern "C" {
570 pub fn BM_bvector_any_SUB(
571 h1: *mut ::core::ffi::c_void,
572 h2: *mut ::core::ffi::c_void,
573 pany: *mut ::std::os::raw::c_uint,
574 ) -> ::std::os::raw::c_int;
575}
576extern "C" {
577 pub fn BM_bvector_count_OR(
578 h1: *mut ::core::ffi::c_void,
579 h2: *mut ::core::ffi::c_void,
580 pcount: *mut ::std::os::raw::c_uint,
581 ) -> ::std::os::raw::c_int;
582}
583extern "C" {
584 pub fn BM_bvector_any_OR(
585 h1: *mut ::core::ffi::c_void,
586 h2: *mut ::core::ffi::c_void,
587 pany: *mut ::std::os::raw::c_uint,
588 ) -> ::std::os::raw::c_int;
589}