pub const BM_OK: u32 = 0;
pub const BM_ERR_BADALLOC: u32 = 1;
pub const BM_ERR_BADARG: u32 = 2;
pub const BM_ERR_RANGE: u32 = 3;
pub const BM_ERR_CPU: u32 = 4;
pub const BM_ERR_SERIALFORMAT: u32 = 5;
pub const BM_ERR_BAD_VALUE: u32 = 6;
pub const BM_ERR_RANK_SELECT_IDX_MISSING: u32 = 7;
pub const BM_ERR_DETACHED: u32 = 101;
pub const BM_ERR_JVM_NOT_SUPPORTED: u32 = 102;
pub const BM_ERR_JVM_OUT_OF_MEMORY: u32 = 103;
pub const BM_OK_MSG: &'static [u8; 19usize] = b"BM-00: All correct\0";
pub const BM_ERR_BADALLOC_MSG: &'static [u8; 24usize] = b"BM-01: Allocation error\0";
pub const BM_ERR_BADARG_MSG: &'static [u8; 44usize] =
b"BM-02: Invalid or missing function argument\0";
pub const BM_ERR_RANGE_MSG: &'static [u8; 32usize] = b"BM-03: Incorrect range or index\0";
pub const BM_ERR_CPU_MSG: &'static [u8; 50usize] =
b"BM-04: Incorrect CPU vectorization (SIMD) version\0";
pub const BM_ERR_SERIALFORMAT_MSG: &'static [u8; 34usize] = b"BM-05: Serialization format error\0";
pub const BM_ERR_BAD_VALUE_MSG: &'static [u8; 17usize] = b"BM-06: Bad value\0";
pub const BM_ERR_DETACHED_MSG: &'static [u8; 42usize] =
b"BM-101: Current thread no attached to JVM\0";
pub const BM_ERR_JVM_NOT_SUPPORTED_MSG: &'static [u8; 34usize] =
b"BM-102: JVM version not supported\0";
pub const BM_ERR_JVM_OUT_OF_MEMORY_MSG: &'static [u8; 28usize] = b"BM-103: Out of memory error\0";
pub const BM_UNK_MSG: &'static [u8; 21usize] = b"BM-XX: Unknown error\0";
pub const BM_SIMD_NO: u32 = 0;
pub const BM_SIMD_SSE2: u32 = 1;
pub const BM_SIMD_SSE42: u32 = 2;
pub const BM_SIMD_AVX2: u32 = 5;
pub const BM_TRUE: u32 = 1;
pub const BM_FALSE: u32 = 0;
pub type wchar_t = ::std::os::raw::c_int;
#[repr(C)]
#[repr(align(16))]
#[derive(Debug, Copy, Clone)]
pub struct max_align_t {
pub __clang_max_align_nonce1: ::std::os::raw::c_longlong,
pub __bindgen_padding_0: u64,
pub __clang_max_align_nonce2: u128,
}
#[test]
fn bindgen_test_layout_max_align_t() {
assert_eq!(
::core::mem::size_of::<max_align_t>(),
32usize,
concat!("Size of: ", stringify!(max_align_t))
);
assert_eq!(
::core::mem::align_of::<max_align_t>(),
16usize,
concat!("Alignment of ", stringify!(max_align_t))
);
assert_eq!(
unsafe {
&(*(::core::ptr::null::<max_align_t>())).__clang_max_align_nonce1 as *const _ as usize
},
0usize,
concat!(
"Offset of field: ",
stringify!(max_align_t),
"::",
stringify!(__clang_max_align_nonce1)
)
);
assert_eq!(
unsafe {
&(*(::core::ptr::null::<max_align_t>())).__clang_max_align_nonce2 as *const _ as usize
},
16usize,
concat!(
"Offset of field: ",
stringify!(max_align_t),
"::",
stringify!(__clang_max_align_nonce2)
)
);
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct BM_bvector_statistics {
pub bit_blocks: usize,
pub gap_blocks: usize,
pub max_serialize_mem: usize,
pub memory_used: usize,
}
#[test]
fn bindgen_test_layout_BM_bvector_statistics() {
assert_eq!(
::core::mem::size_of::<BM_bvector_statistics>(),
32usize,
concat!("Size of: ", stringify!(BM_bvector_statistics))
);
assert_eq!(
::core::mem::align_of::<BM_bvector_statistics>(),
8usize,
concat!("Alignment of ", stringify!(BM_bvector_statistics))
);
assert_eq!(
unsafe {
&(*(::core::ptr::null::<BM_bvector_statistics>())).bit_blocks as *const _ as usize
},
0usize,
concat!(
"Offset of field: ",
stringify!(BM_bvector_statistics),
"::",
stringify!(bit_blocks)
)
);
assert_eq!(
unsafe {
&(*(::core::ptr::null::<BM_bvector_statistics>())).gap_blocks as *const _ as usize
},
8usize,
concat!(
"Offset of field: ",
stringify!(BM_bvector_statistics),
"::",
stringify!(gap_blocks)
)
);
assert_eq!(
unsafe {
&(*(::core::ptr::null::<BM_bvector_statistics>())).max_serialize_mem as *const _
as usize
},
16usize,
concat!(
"Offset of field: ",
stringify!(BM_bvector_statistics),
"::",
stringify!(max_serialize_mem)
)
);
assert_eq!(
unsafe {
&(*(::core::ptr::null::<BM_bvector_statistics>())).memory_used as *const _ as usize
},
24usize,
concat!(
"Offset of field: ",
stringify!(BM_bvector_statistics),
"::",
stringify!(memory_used)
)
);
}
extern "C" {
pub fn BM_init(arg1: *mut ::core::ffi::c_void) -> ::std::os::raw::c_int;
}
extern "C" {
#[doc = "return copyright info string and version information."]
pub fn BM_version(
major: *mut ::std::os::raw::c_int,
minor: *mut ::std::os::raw::c_int,
patch: *mut ::std::os::raw::c_int,
) -> *const ::std::os::raw::c_char;
}
extern "C" {
#[doc = "return SIMD version used to build binaries"]
#[doc = "one of BM_SIMD_* defines"]
pub fn BM_simd_version() -> ::std::os::raw::c_int;
}
extern "C" {
#[doc = "return error message by code"]
pub fn BM_error_msg(errcode: ::std::os::raw::c_int) -> *const ::std::os::raw::c_char;
}
extern "C" {
pub fn BM_bvector_construct(
h: *mut *mut ::core::ffi::c_void,
bv_max: ::std::os::raw::c_uint,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn BM_bvector_init(h: *mut ::core::ffi::c_void) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn BM_bvector_construct_copy(
h: *mut *mut ::core::ffi::c_void,
hfrom: *mut ::core::ffi::c_void,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn BM_bvector_free(h: *mut ::core::ffi::c_void) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn BM_bvector_get_size(
h: *mut ::core::ffi::c_void,
psize: *mut ::std::os::raw::c_uint,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn BM_bvector_set_size(
h: *mut ::core::ffi::c_void,
new_size: ::std::os::raw::c_uint,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn BM_bvector_swap(
h1: *mut ::core::ffi::c_void,
h2: *mut ::core::ffi::c_void,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn BM_bvector_set_bit(
h: *mut ::core::ffi::c_void,
i: ::std::os::raw::c_uint,
val: ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn BM_bvector_set_bits(
h: *mut ::core::ffi::c_void,
idx: *mut ::std::os::raw::c_uint,
idx_size: ::std::os::raw::c_uint,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn BM_bvector_set_bit_no_check(
h: *mut ::core::ffi::c_void,
i: ::std::os::raw::c_uint,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn BM_bvector_set_bit_conditional(
h: *mut ::core::ffi::c_void,
i: ::std::os::raw::c_uint,
val: ::std::os::raw::c_int,
condition: ::std::os::raw::c_int,
pchanged: *mut ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn BM_bvector_flip_bit(
h: *mut ::core::ffi::c_void,
i: ::std::os::raw::c_uint,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn BM_bvector_inc_bit(
h: *mut ::core::ffi::c_void,
i: ::std::os::raw::c_uint,
carry_over: *mut ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn BM_bvector_set(h: *mut ::core::ffi::c_void) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn BM_bvector_set_range(
h: *mut ::core::ffi::c_void,
left: ::std::os::raw::c_uint,
right: ::std::os::raw::c_uint,
value: ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn BM_bvector_invert(h: *mut ::core::ffi::c_void) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn BM_bvector_clear(
h: *mut ::core::ffi::c_void,
free_mem: ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn BM_bvector_extract_next(
h: *mut ::core::ffi::c_void,
i: ::std::os::raw::c_uint,
pnext: *mut ::std::os::raw::c_uint,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn BM_bvector_get_bit(
h: *mut ::core::ffi::c_void,
i: ::std::os::raw::c_uint,
pval: *mut ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn BM_bvector_count(
h: *mut ::core::ffi::c_void,
pcount: *mut ::std::os::raw::c_uint,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn BM_bvector_count_range(
h: *mut ::core::ffi::c_void,
left: ::std::os::raw::c_uint,
right: ::std::os::raw::c_uint,
pcount: *mut ::std::os::raw::c_uint,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn BM_bvector_any(
h: *mut ::core::ffi::c_void,
pval: *mut ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn BM_bvector_find(
h: *mut ::core::ffi::c_void,
from: ::std::os::raw::c_uint,
ppos: *mut ::std::os::raw::c_uint,
pfound: *mut ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn BM_bvector_find_reverse(
h: *mut ::core::ffi::c_void,
ppos: *mut ::std::os::raw::c_uint,
pfound: *mut ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn BM_bvector_find_rank(
h: *mut ::core::ffi::c_void,
rank: ::std::os::raw::c_uint,
from: ::std::os::raw::c_uint,
pidx: *mut ::std::os::raw::c_uint,
pfound: *mut ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn BM_bvector_get_first(
h: *mut ::core::ffi::c_void,
pi: *mut ::std::os::raw::c_uint,
pfound: *mut ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn BM_bvector_get_next(
h: *mut ::core::ffi::c_void,
i: ::std::os::raw::c_uint,
pnext: *mut ::std::os::raw::c_uint,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn BM_bvector_compare(
h1: *mut ::core::ffi::c_void,
h2: *mut ::core::ffi::c_void,
pres: *mut ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn BM_bvector_find_first_mismatch(
h1: *mut ::core::ffi::c_void,
h2: *mut ::core::ffi::c_void,
pi: *mut ::std::os::raw::c_uint,
pfound: *mut ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn BM_bvector_optimize(
h: *mut ::core::ffi::c_void,
opt_mode: ::std::os::raw::c_int,
pstat: *mut BM_bvector_statistics,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn BM_bvector_calc_stat(
h: *mut ::core::ffi::c_void,
pstat: *mut BM_bvector_statistics,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn BM_bvector_combine_operation(
hdst: *mut ::core::ffi::c_void,
hsrc: *mut ::core::ffi::c_void,
opcode: ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn BM_bvector_combine_AND(
hdst: *mut ::core::ffi::c_void,
hsrc: *mut ::core::ffi::c_void,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn BM_bvector_combine_AND_2sc(
hdst: *mut ::core::ffi::c_void,
hsrc1: *mut ::core::ffi::c_void,
hsrc2: *mut ::core::ffi::c_void,
compress: ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn BM_bvector_combine_OR(
hdst: *mut ::core::ffi::c_void,
hsrc: *mut ::core::ffi::c_void,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn BM_bvector_combine_OR_2sc(
hdst: *mut ::core::ffi::c_void,
hsrc1: *mut ::core::ffi::c_void,
hsrc2: *mut ::core::ffi::c_void,
compress: ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn BM_bvector_combine_SUB(
hdst: *mut ::core::ffi::c_void,
hsrc: *mut ::core::ffi::c_void,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn BM_bvector_combine_SUB_2sc(
hdst: *mut ::core::ffi::c_void,
hsrc1: *mut ::core::ffi::c_void,
hsrc2: *mut ::core::ffi::c_void,
compress: ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn BM_bvector_combine_XOR(
hdst: *mut ::core::ffi::c_void,
hsrc: *mut ::core::ffi::c_void,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn BM_bvector_combine_XOR_2sc(
hdst: *mut ::core::ffi::c_void,
hsrc1: *mut ::core::ffi::c_void,
hsrc2: *mut ::core::ffi::c_void,
compress: ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn BM_bvector_merge(
hdst: *mut ::core::ffi::c_void,
hsrc: *mut ::core::ffi::c_void,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn BM_bvector_rshift1(hdst: *mut ::core::ffi::c_void) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn BM_bvector_combine_OR_arr(
hdst: *mut ::core::ffi::c_void,
arr_begin: *const ::std::os::raw::c_uint,
arr_end: *const ::std::os::raw::c_uint,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn BM_bvector_combine_XOR_arr(
hdst: *mut ::core::ffi::c_void,
arr_begin: *const ::std::os::raw::c_uint,
arr_end: *const ::std::os::raw::c_uint,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn BM_bvector_combine_SUB_arr(
hdst: *mut ::core::ffi::c_void,
arr_begin: *const ::std::os::raw::c_uint,
arr_end: *const ::std::os::raw::c_uint,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn BM_bvector_combine_AND_arr(
hdst: *mut ::core::ffi::c_void,
arr_begin: *const ::std::os::raw::c_uint,
arr_end: *const ::std::os::raw::c_uint,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn BM_bvector_combine_AND_arr_sorted(
hdst: *mut ::core::ffi::c_void,
arr_begin: *const ::std::os::raw::c_uint,
arr_end: *const ::std::os::raw::c_uint,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn BM_bvector_enumerator_construct(
h: *mut ::core::ffi::c_void,
peh: *mut *mut ::core::ffi::c_void,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn BM_bvector_enumerator_construct_from(
h: *mut ::core::ffi::c_void,
peh: *mut *mut ::core::ffi::c_void,
pos: ::std::os::raw::c_uint,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn BM_bvector_enumerator_free(eh: *mut ::core::ffi::c_void) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn BM_bvector_enumerator_is_valid(
eh: *mut ::core::ffi::c_void,
pvalid: *mut ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn BM_bvector_enumerator_get_value(
eh: *mut ::core::ffi::c_void,
pvalue: *mut ::std::os::raw::c_uint,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn BM_bvector_enumerator_next(
eh: *mut ::core::ffi::c_void,
pvalid: *mut ::std::os::raw::c_int,
pvalue: *mut ::std::os::raw::c_uint,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn BM_bvector_enumerator_goto(
eh: *mut ::core::ffi::c_void,
pos: ::std::os::raw::c_uint,
pvalid: *mut ::std::os::raw::c_int,
pvalue: *mut ::std::os::raw::c_uint,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn BM_bvector_serialize(
h: *mut ::core::ffi::c_void,
buf: *mut ::std::os::raw::c_char,
buf_size: usize,
pblob_size: *mut usize,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn BM_bvector_deserialize(
h: *mut ::core::ffi::c_void,
buf: *const ::std::os::raw::c_char,
buf_size: usize,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn BM_bvector_count_AND(
h1: *mut ::core::ffi::c_void,
h2: *mut ::core::ffi::c_void,
pcount: *mut ::std::os::raw::c_uint,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn BM_bvector_any_AND(
h1: *mut ::core::ffi::c_void,
h2: *mut ::core::ffi::c_void,
pany: *mut ::std::os::raw::c_uint,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn BM_bvector_count_XOR(
h1: *mut ::core::ffi::c_void,
h2: *mut ::core::ffi::c_void,
pcount: *mut ::std::os::raw::c_uint,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn BM_bvector_any_XOR(
h1: *mut ::core::ffi::c_void,
h2: *mut ::core::ffi::c_void,
pany: *mut ::std::os::raw::c_uint,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn BM_bvector_count_SUB(
h1: *mut ::core::ffi::c_void,
h2: *mut ::core::ffi::c_void,
pcount: *mut ::std::os::raw::c_uint,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn BM_bvector_any_SUB(
h1: *mut ::core::ffi::c_void,
h2: *mut ::core::ffi::c_void,
pany: *mut ::std::os::raw::c_uint,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn BM_bvector_count_OR(
h1: *mut ::core::ffi::c_void,
h2: *mut ::core::ffi::c_void,
pcount: *mut ::std::os::raw::c_uint,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn BM_bvector_any_OR(
h1: *mut ::core::ffi::c_void,
h2: *mut ::core::ffi::c_void,
pany: *mut ::std::os::raw::c_uint,
) -> ::std::os::raw::c_int;
}