pub const REC_VERSION_MAJOR: u32 = 1;
pub const REC_VERSION_MINOR: u32 = 0;
pub const REC_VERSION_STRING: &[u8; 4] = b"1.0\0";
pub const MSET_ANY: u32 = 0;
pub const REC_FNAME_RE: &[u8; 23] = b"[a-zA-Z%][a-zA-Z0-9_]*\0";
pub const REC_TYPE_NAME_RE: &[u8; 23] = b"[a-zA-Z][a-zA-Z0-9_-]*\0";
pub const REC_URL_REGEXP: &[u8; 31] = b"(file|http|ftp|https)://[^ \t]+\0";
pub const REC_FILE_REGEXP: &[u8; 14] = b"(/?[^/ \t\n]+)+\0";
pub const REC_FNAME_FEX_RE: &[u8; 50] = b"[a-zA-Z%][a-zA-Z0-9_]*(\\.[a-zA-Z%][a-zA-Z0-9_]*)?\0";
pub const REC_FNAME_LIST_RE: &[u8; 54] =
b"[a-zA-Z%][a-zA-Z0-9_]*([ \n\t]+[a-zA-Z%][a-zA-Z0-9_]*)*\0";
pub const REC_FNAME_LIST_CS_RE : & [u8 ; 103] = b"[a-zA-Z%][a-zA-Z0-9_]*(\\.[a-zA-Z%][a-zA-Z0-9_]*)?(,[a-zA-Z%][a-zA-Z0-9_]*(\\.[a-zA-Z%][a-zA-Z0-9_]*)?)*\0" ;
pub const REC_FNAME_SUB_RE: &[u8; 73] =
b"[a-zA-Z%][a-zA-Z0-9_]*(\\.[a-zA-Z%][a-zA-Z0-9_]*)?(\\[[0-9]+(-[0-9]+)?\\])?\0";
pub const REC_FEX_FUNCTION_NAME: &[u8; 23] = b"[a-zA-Z_][a-zA-Z0-9_]*\0";
pub const REC_FEX_CALL: &[u8; 76] =
b"[a-zA-Z_][a-zA-Z0-9_]*\\([a-zA-Z%][a-zA-Z0-9_]*(\\.[a-zA-Z%][a-zA-Z0-9_]*)?\\)\0";
pub const REC_FNAME_LIST_SUB_ELEM_RE : & [u8 ; 204] = b"([a-zA-Z%][a-zA-Z0-9_]*(\\.[a-zA-Z%][a-zA-Z0-9_]*)?(\\[[0-9]+(-[0-9]+)?\\])?|[a-zA-Z_][a-zA-Z0-9_]*\\([a-zA-Z%][a-zA-Z0-9_]*(\\.[a-zA-Z%][a-zA-Z0-9_]*)?\\))(:[a-zA-Z%][a-zA-Z0-9_]*(\\.[a-zA-Z%][a-zA-Z0-9_]*)?)?\0" ;
pub const REC_FNAME_LIST_SUB_RE : & [u8 ; 411] = b"([a-zA-Z%][a-zA-Z0-9_]*(\\.[a-zA-Z%][a-zA-Z0-9_]*)?(\\[[0-9]+(-[0-9]+)?\\])?|[a-zA-Z_][a-zA-Z0-9_]*\\([a-zA-Z%][a-zA-Z0-9_]*(\\.[a-zA-Z%][a-zA-Z0-9_]*)?\\))(:[a-zA-Z%][a-zA-Z0-9_]*(\\.[a-zA-Z%][a-zA-Z0-9_]*)?)?(,([a-zA-Z%][a-zA-Z0-9_]*(\\.[a-zA-Z%][a-zA-Z0-9_]*)?(\\[[0-9]+(-[0-9]+)?\\])?|[a-zA-Z_][a-zA-Z0-9_]*\\([a-zA-Z%][a-zA-Z0-9_]*(\\.[a-zA-Z%][a-zA-Z0-9_]*)?\\))(:[a-zA-Z%][a-zA-Z0-9_]*(\\.[a-zA-Z%][a-zA-Z0-9_]*)?)?)*\0" ;
pub const MSET_FIELD: u32 = 1;
pub const MSET_COMMENT: u32 = 2;
pub const REC_RECORD_TYPE_RE: &[u8; 23] = b"[a-zA-Z%][a-zA-Z0-9_]*\0";
pub const MSET_RECORD: u32 = 1;
pub const REC_F_DESCRIPTOR: u32 = 1;
pub const REC_F_ICASE: u32 = 2;
pub const REC_F_UNIQ: u32 = 4;
pub const REC_F_NOAUTO: u32 = 8;
pub const REC_F_COMMENT_OUT: u32 = 16;
pub const REC_SET_ACT_NONE: u32 = 0;
pub const REC_SET_ACT_RENAME: u32 = 1;
pub const REC_SET_ACT_SET: u32 = 2;
pub const REC_SET_ACT_ADD: u32 = 3;
pub const REC_SET_ACT_SETADD: u32 = 4;
pub const REC_SET_ACT_DELETE: u32 = 5;
pub const REC_SET_ACT_COMMENT: u32 = 6;
pub const REC_ENCRYPTED_PREFIX: &[u8; 11] = b"encrypted-\0";
pub type __int64_t = ::std::os::raw::c_longlong;
pub type __darwin_off_t = __int64_t;
pub type fpos_t = __darwin_off_t;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct __sbuf {
pub _base: *mut ::std::os::raw::c_uchar,
pub _size: ::std::os::raw::c_int,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
["Size of __sbuf"][::std::mem::size_of::<__sbuf>() - 16usize];
["Alignment of __sbuf"][::std::mem::align_of::<__sbuf>() - 8usize];
["Offset of field: __sbuf::_base"][::std::mem::offset_of!(__sbuf, _base) - 0usize];
["Offset of field: __sbuf::_size"][::std::mem::offset_of!(__sbuf, _size) - 8usize];
};
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct __sFILEX {
_unused: [u8; 0],
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct __sFILE {
pub _p: *mut ::std::os::raw::c_uchar,
pub _r: ::std::os::raw::c_int,
pub _w: ::std::os::raw::c_int,
pub _flags: ::std::os::raw::c_short,
pub _file: ::std::os::raw::c_short,
pub _bf: __sbuf,
pub _lbfsize: ::std::os::raw::c_int,
pub _cookie: *mut ::std::os::raw::c_void,
pub _close: ::std::option::Option<
unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void) -> ::std::os::raw::c_int,
>,
pub _read: ::std::option::Option<
unsafe extern "C" fn(
arg1: *mut ::std::os::raw::c_void,
arg2: *mut ::std::os::raw::c_char,
__n: ::std::os::raw::c_int,
) -> ::std::os::raw::c_int,
>,
pub _seek: ::std::option::Option<
unsafe extern "C" fn(
arg1: *mut ::std::os::raw::c_void,
arg2: fpos_t,
arg3: ::std::os::raw::c_int,
) -> fpos_t,
>,
pub _write: ::std::option::Option<
unsafe extern "C" fn(
arg1: *mut ::std::os::raw::c_void,
arg2: *const ::std::os::raw::c_char,
__n: ::std::os::raw::c_int,
) -> ::std::os::raw::c_int,
>,
pub _ub: __sbuf,
pub _extra: *mut __sFILEX,
pub _ur: ::std::os::raw::c_int,
pub _ubuf: [::std::os::raw::c_uchar; 3usize],
pub _nbuf: [::std::os::raw::c_uchar; 1usize],
pub _lb: __sbuf,
pub _blksize: ::std::os::raw::c_int,
pub _offset: fpos_t,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
["Size of __sFILE"][::std::mem::size_of::<__sFILE>() - 152usize];
["Alignment of __sFILE"][::std::mem::align_of::<__sFILE>() - 8usize];
["Offset of field: __sFILE::_p"][::std::mem::offset_of!(__sFILE, _p) - 0usize];
["Offset of field: __sFILE::_r"][::std::mem::offset_of!(__sFILE, _r) - 8usize];
["Offset of field: __sFILE::_w"][::std::mem::offset_of!(__sFILE, _w) - 12usize];
["Offset of field: __sFILE::_flags"][::std::mem::offset_of!(__sFILE, _flags) - 16usize];
["Offset of field: __sFILE::_file"][::std::mem::offset_of!(__sFILE, _file) - 18usize];
["Offset of field: __sFILE::_bf"][::std::mem::offset_of!(__sFILE, _bf) - 24usize];
["Offset of field: __sFILE::_lbfsize"][::std::mem::offset_of!(__sFILE, _lbfsize) - 40usize];
["Offset of field: __sFILE::_cookie"][::std::mem::offset_of!(__sFILE, _cookie) - 48usize];
["Offset of field: __sFILE::_close"][::std::mem::offset_of!(__sFILE, _close) - 56usize];
["Offset of field: __sFILE::_read"][::std::mem::offset_of!(__sFILE, _read) - 64usize];
["Offset of field: __sFILE::_seek"][::std::mem::offset_of!(__sFILE, _seek) - 72usize];
["Offset of field: __sFILE::_write"][::std::mem::offset_of!(__sFILE, _write) - 80usize];
["Offset of field: __sFILE::_ub"][::std::mem::offset_of!(__sFILE, _ub) - 88usize];
["Offset of field: __sFILE::_extra"][::std::mem::offset_of!(__sFILE, _extra) - 104usize];
["Offset of field: __sFILE::_ur"][::std::mem::offset_of!(__sFILE, _ur) - 112usize];
["Offset of field: __sFILE::_ubuf"][::std::mem::offset_of!(__sFILE, _ubuf) - 116usize];
["Offset of field: __sFILE::_nbuf"][::std::mem::offset_of!(__sFILE, _nbuf) - 119usize];
["Offset of field: __sFILE::_lb"][::std::mem::offset_of!(__sFILE, _lb) - 120usize];
["Offset of field: __sFILE::_blksize"][::std::mem::offset_of!(__sFILE, _blksize) - 136usize];
["Offset of field: __sFILE::_offset"][::std::mem::offset_of!(__sFILE, _offset) - 144usize];
};
pub type FILE = __sFILE;
unsafe extern "C" {
pub fn rec_init();
}
unsafe extern "C" {
pub fn rec_fini();
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct rec_mset_s {
_unused: [u8; 0],
}
pub type rec_mset_t = *mut rec_mset_s;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct rec_mset_elem_s {
_unused: [u8; 0],
}
pub type rec_mset_elem_t = *mut rec_mset_elem_s;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct rec_mset_list_iter_t {
pub vtable: *mut ::std::os::raw::c_void,
pub list: *mut ::std::os::raw::c_void,
pub count: usize,
pub p: *mut ::std::os::raw::c_void,
pub q: *mut ::std::os::raw::c_void,
pub i: usize,
pub j: usize,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
["Size of rec_mset_list_iter_t"][::std::mem::size_of::<rec_mset_list_iter_t>() - 56usize];
["Alignment of rec_mset_list_iter_t"][::std::mem::align_of::<rec_mset_list_iter_t>() - 8usize];
["Offset of field: rec_mset_list_iter_t::vtable"]
[::std::mem::offset_of!(rec_mset_list_iter_t, vtable) - 0usize];
["Offset of field: rec_mset_list_iter_t::list"]
[::std::mem::offset_of!(rec_mset_list_iter_t, list) - 8usize];
["Offset of field: rec_mset_list_iter_t::count"]
[::std::mem::offset_of!(rec_mset_list_iter_t, count) - 16usize];
["Offset of field: rec_mset_list_iter_t::p"]
[::std::mem::offset_of!(rec_mset_list_iter_t, p) - 24usize];
["Offset of field: rec_mset_list_iter_t::q"]
[::std::mem::offset_of!(rec_mset_list_iter_t, q) - 32usize];
["Offset of field: rec_mset_list_iter_t::i"]
[::std::mem::offset_of!(rec_mset_list_iter_t, i) - 40usize];
["Offset of field: rec_mset_list_iter_t::j"]
[::std::mem::offset_of!(rec_mset_list_iter_t, j) - 48usize];
};
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct rec_mset_iterator_t {
pub mset: rec_mset_t,
pub list_iter: rec_mset_list_iter_t,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
["Size of rec_mset_iterator_t"][::std::mem::size_of::<rec_mset_iterator_t>() - 64usize];
["Alignment of rec_mset_iterator_t"][::std::mem::align_of::<rec_mset_iterator_t>() - 8usize];
["Offset of field: rec_mset_iterator_t::mset"]
[::std::mem::offset_of!(rec_mset_iterator_t, mset) - 0usize];
["Offset of field: rec_mset_iterator_t::list_iter"]
[::std::mem::offset_of!(rec_mset_iterator_t, list_iter) - 8usize];
};
pub type rec_mset_disp_fn_t =
::std::option::Option<unsafe extern "C" fn(data: *mut ::std::os::raw::c_void)>;
pub type rec_mset_equal_fn_t = ::std::option::Option<
unsafe extern "C" fn(
data1: *mut ::std::os::raw::c_void,
data2: *mut ::std::os::raw::c_void,
) -> bool,
>;
pub type rec_mset_dup_fn_t = ::std::option::Option<
unsafe extern "C" fn(data: *mut ::std::os::raw::c_void) -> *mut ::std::os::raw::c_void,
>;
pub type rec_mset_compare_fn_t = ::std::option::Option<
unsafe extern "C" fn(
data1: *mut ::std::os::raw::c_void,
data2: *mut ::std::os::raw::c_void,
type2: ::std::os::raw::c_int,
) -> ::std::os::raw::c_int,
>;
pub type rec_mset_type_t = ::std::os::raw::c_int;
unsafe extern "C" {
#[doc = " Creating and destroying multi-sets"]
pub fn rec_mset_new() -> rec_mset_t;
}
unsafe extern "C" {
pub fn rec_mset_destroy(mset: rec_mset_t);
}
unsafe extern "C" {
pub fn rec_mset_dup(mset: rec_mset_t) -> rec_mset_t;
}
unsafe extern "C" {
#[doc = " Registering Types in a multi-set"]
pub fn rec_mset_type_p(mset: rec_mset_t, type_: rec_mset_type_t) -> bool;
}
unsafe extern "C" {
pub fn rec_mset_register_type(
mset: rec_mset_t,
name: *mut ::std::os::raw::c_char,
disp_fn: rec_mset_disp_fn_t,
equal_fn: rec_mset_equal_fn_t,
dup_fn: rec_mset_dup_fn_t,
compare_fn: rec_mset_compare_fn_t,
) -> rec_mset_type_t;
}
unsafe extern "C" {
pub fn rec_mset_count(mset: rec_mset_t, type_: rec_mset_type_t) -> usize;
}
unsafe extern "C" {
#[doc = " Getting, inserting and removing elements"]
pub fn rec_mset_get_at(
mset: rec_mset_t,
type_: rec_mset_type_t,
position: usize,
) -> *mut ::std::os::raw::c_void;
}
unsafe extern "C" {
pub fn rec_mset_insert_at(
mset: rec_mset_t,
type_: rec_mset_type_t,
data: *mut ::std::os::raw::c_void,
position: usize,
) -> rec_mset_elem_t;
}
unsafe extern "C" {
pub fn rec_mset_insert_after(
mset: rec_mset_t,
type_: rec_mset_type_t,
data: *mut ::std::os::raw::c_void,
elem: rec_mset_elem_t,
) -> rec_mset_elem_t;
}
unsafe extern "C" {
pub fn rec_mset_append(
mset: rec_mset_t,
elem_type: rec_mset_type_t,
data: *mut ::std::os::raw::c_void,
type_: rec_mset_type_t,
) -> rec_mset_elem_t;
}
unsafe extern "C" {
pub fn rec_mset_add_sorted(
mset: rec_mset_t,
type_: rec_mset_type_t,
data: *mut ::std::os::raw::c_void,
) -> rec_mset_elem_t;
}
unsafe extern "C" {
pub fn rec_mset_remove_at(mset: rec_mset_t, type_: rec_mset_type_t, position: usize) -> bool;
}
unsafe extern "C" {
pub fn rec_mset_remove_elem(mset: rec_mset_t, elem: rec_mset_elem_t) -> bool;
}
unsafe extern "C" {
pub fn rec_mset_search(mset: rec_mset_t, data: *mut ::std::os::raw::c_void) -> rec_mset_elem_t;
}
unsafe extern "C" {
#[doc = " Iterating on mset elements"]
pub fn rec_mset_iterator(mset: rec_mset_t) -> rec_mset_iterator_t;
}
unsafe extern "C" {
pub fn rec_mset_iterator_next(
iterator: *mut rec_mset_iterator_t,
type_: rec_mset_type_t,
data: *mut *const ::std::os::raw::c_void,
elem: *mut rec_mset_elem_t,
) -> bool;
}
unsafe extern "C" {
pub fn rec_mset_iterator_free(iterator: *mut rec_mset_iterator_t);
}
unsafe extern "C" {
#[doc = " Managing mset elements"]
pub fn rec_mset_elem_type(elem: rec_mset_elem_t) -> rec_mset_type_t;
}
unsafe extern "C" {
pub fn rec_mset_elem_set_type(elem: rec_mset_elem_t, type_: rec_mset_type_t);
}
unsafe extern "C" {
pub fn rec_mset_elem_data(elem: rec_mset_elem_t) -> *mut ::std::os::raw::c_void;
}
unsafe extern "C" {
pub fn rec_mset_elem_set_data(elem: rec_mset_elem_t, data: *mut ::std::os::raw::c_void);
}
unsafe extern "C" {
pub fn rec_mset_elem_equal_p(elem1: rec_mset_elem_t, elem2: rec_mset_elem_t) -> bool;
}
unsafe extern "C" {
pub fn rec_mset_elem_dup_data(elem: rec_mset_elem_t) -> *mut ::std::os::raw::c_void;
}
unsafe extern "C" {
#[doc = " Sorting, grouping and other operations"]
pub fn rec_mset_sort(mset: rec_mset_t) -> rec_mset_t;
}
unsafe extern "C" {
#[doc = " Debugging"]
pub fn rec_mset_dump(mset: rec_mset_t);
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct rec_buf_s {
_unused: [u8; 0],
}
pub type rec_buf_t = *mut rec_buf_s;
unsafe extern "C" {
pub fn rec_buf_new(data: *mut *mut ::std::os::raw::c_char, size: *mut usize) -> rec_buf_t;
}
unsafe extern "C" {
pub fn rec_buf_close(buffer: rec_buf_t);
}
unsafe extern "C" {
pub fn rec_buf_putc(c: ::std::os::raw::c_int, buffer: rec_buf_t) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn rec_buf_puts(
s: *const ::std::os::raw::c_char,
buffer: rec_buf_t,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn rec_buf_rewind(buf: rec_buf_t, n: ::std::os::raw::c_int);
}
pub type rec_comment_t = *mut ::std::os::raw::c_char;
unsafe extern "C" {
pub fn rec_comment_new(text: *mut ::std::os::raw::c_char) -> rec_comment_t;
}
unsafe extern "C" {
pub fn rec_comment_destroy(comment: rec_comment_t);
}
unsafe extern "C" {
pub fn rec_comment_dup(comment: rec_comment_t) -> rec_comment_t;
}
unsafe extern "C" {
pub fn rec_comment_text(comment: rec_comment_t) -> *mut ::std::os::raw::c_char;
}
unsafe extern "C" {
pub fn rec_comment_set_text(comment: *mut rec_comment_t, text: *mut ::std::os::raw::c_char);
}
unsafe extern "C" {
pub fn rec_comment_equal_p(comment1: rec_comment_t, comment2: rec_comment_t) -> bool;
}
pub const rec_std_field_e_REC_FIELD_AUTO: rec_std_field_e = 0;
pub const rec_std_field_e_REC_FIELD_CONFIDENTIAL: rec_std_field_e = 1;
pub const rec_std_field_e_REC_FIELD_KEY: rec_std_field_e = 2;
pub const rec_std_field_e_REC_FIELD_MANDATORY: rec_std_field_e = 3;
pub const rec_std_field_e_REC_FIELD_PROHIBIT: rec_std_field_e = 4;
pub const rec_std_field_e_REC_FIELD_REC: rec_std_field_e = 5;
pub const rec_std_field_e_REC_FIELD_SIZE: rec_std_field_e = 6;
pub const rec_std_field_e_REC_FIELD_SORT: rec_std_field_e = 7;
pub const rec_std_field_e_REC_FIELD_TYPE: rec_std_field_e = 8;
pub const rec_std_field_e_REC_FIELD_TYPEDEF: rec_std_field_e = 9;
pub const rec_std_field_e_REC_FIELD_UNIQUE: rec_std_field_e = 10;
pub const rec_std_field_e_REC_FIELD_CONSTRAINT: rec_std_field_e = 11;
pub const rec_std_field_e_REC_FIELD_ALLOWED: rec_std_field_e = 12;
pub const rec_std_field_e_REC_FIELD_SINGULAR: rec_std_field_e = 13;
#[doc = " Field data types"]
pub type rec_std_field_e = ::std::os::raw::c_uint;
unsafe extern "C" {
#[doc = " Field name utilities"]
pub fn rec_field_name_equal_p(
name1: *const ::std::os::raw::c_char,
name2: *const ::std::os::raw::c_char,
) -> bool;
}
unsafe extern "C" {
pub fn rec_field_name_p(str_: *const ::std::os::raw::c_char) -> bool;
}
unsafe extern "C" {
pub fn rec_field_name_normalise(
str_: *const ::std::os::raw::c_char,
) -> *mut ::std::os::raw::c_char;
}
unsafe extern "C" {
pub fn rec_std_field_name(std_field: rec_std_field_e) -> *const ::std::os::raw::c_char;
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct rec_fex_s {
_unused: [u8; 0],
}
pub type rec_fex_t = *mut rec_fex_s;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct rec_fex_elem_s {
_unused: [u8; 0],
}
pub type rec_fex_elem_t = *mut rec_fex_elem_s;
pub const rec_fex_kind_e_REC_FEX_SIMPLE: rec_fex_kind_e = 0;
pub const rec_fex_kind_e_REC_FEX_CSV: rec_fex_kind_e = 1;
pub const rec_fex_kind_e_REC_FEX_SUBSCRIPTS: rec_fex_kind_e = 2;
pub type rec_fex_kind_e = ::std::os::raw::c_uint;
unsafe extern "C" {
#[doc = " Creating and destroying field expressions"]
pub fn rec_fex_new(str_: *const ::std::os::raw::c_char, kind: rec_fex_kind_e) -> rec_fex_t;
}
unsafe extern "C" {
pub fn rec_fex_destroy(fex: rec_fex_t);
}
unsafe extern "C" {
pub fn rec_fex_dup(fex: rec_fex_t) -> rec_fex_t;
}
unsafe extern "C" {
#[doc = " Getting and setting field expression properties"]
pub fn rec_fex_size(fex: rec_fex_t) -> usize;
}
unsafe extern "C" {
pub fn rec_fex_member_p(
fex: rec_fex_t,
fname: *const ::std::os::raw::c_char,
min: ::std::os::raw::c_int,
max: ::std::os::raw::c_int,
) -> bool;
}
unsafe extern "C" {
pub fn rec_fex_get(fex: rec_fex_t, position: usize) -> rec_fex_elem_t;
}
unsafe extern "C" {
pub fn rec_fex_append(
fex: rec_fex_t,
fname: *const ::std::os::raw::c_char,
min: ::std::os::raw::c_int,
max: ::std::os::raw::c_int,
) -> rec_fex_elem_t;
}
unsafe extern "C" {
pub fn rec_fex_all_calls_p(fex: rec_fex_t) -> bool;
}
unsafe extern "C" {
#[doc = " Accessing field expression elements"]
pub fn rec_fex_elem_field_name(elem: rec_fex_elem_t) -> *const ::std::os::raw::c_char;
}
unsafe extern "C" {
pub fn rec_fex_elem_set_field_name(
elem: rec_fex_elem_t,
fname: *const ::std::os::raw::c_char,
) -> bool;
}
unsafe extern "C" {
pub fn rec_fex_elem_min(elem: rec_fex_elem_t) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn rec_fex_elem_max(elem: rec_fex_elem_t) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn rec_fex_elem_rewrite_to(elem: rec_fex_elem_t) -> *const ::std::os::raw::c_char;
}
unsafe extern "C" {
pub fn rec_fex_elem_function_name(elem: rec_fex_elem_t) -> *const ::std::os::raw::c_char;
}
unsafe extern "C" {
pub fn rec_fex_elem_function_data(elem: rec_fex_elem_t) -> *mut *mut ::std::os::raw::c_void;
}
unsafe extern "C" {
#[doc = " Miscellaneous field expressions functions"]
pub fn rec_fex_check(str_: *const ::std::os::raw::c_char, kind: rec_fex_kind_e) -> bool;
}
unsafe extern "C" {
pub fn rec_fex_sort(fex: rec_fex_t);
}
unsafe extern "C" {
pub fn rec_fex_str(fex: rec_fex_t, kind: rec_fex_kind_e) -> *mut ::std::os::raw::c_char;
}
pub const rec_type_kind_e_REC_TYPE_NONE: rec_type_kind_e = 0;
pub const rec_type_kind_e_REC_TYPE_INT: rec_type_kind_e = 1;
pub const rec_type_kind_e_REC_TYPE_BOOL: rec_type_kind_e = 2;
pub const rec_type_kind_e_REC_TYPE_RANGE: rec_type_kind_e = 3;
pub const rec_type_kind_e_REC_TYPE_REAL: rec_type_kind_e = 4;
pub const rec_type_kind_e_REC_TYPE_SIZE: rec_type_kind_e = 5;
pub const rec_type_kind_e_REC_TYPE_LINE: rec_type_kind_e = 6;
pub const rec_type_kind_e_REC_TYPE_REGEXP: rec_type_kind_e = 7;
pub const rec_type_kind_e_REC_TYPE_DATE: rec_type_kind_e = 8;
pub const rec_type_kind_e_REC_TYPE_ENUM: rec_type_kind_e = 9;
pub const rec_type_kind_e_REC_TYPE_FIELD: rec_type_kind_e = 10;
pub const rec_type_kind_e_REC_TYPE_EMAIL: rec_type_kind_e = 11;
pub const rec_type_kind_e_REC_TYPE_UUID: rec_type_kind_e = 12;
pub const rec_type_kind_e_REC_TYPE_REC: rec_type_kind_e = 13;
pub type rec_type_kind_e = ::std::os::raw::c_uint;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct rec_type_s {
_unused: [u8; 0],
}
pub type rec_type_t = *mut rec_type_s;
unsafe extern "C" {
pub fn rec_type_new(str_: *const ::std::os::raw::c_char) -> rec_type_t;
}
unsafe extern "C" {
pub fn rec_type_destroy(type_: rec_type_t);
}
unsafe extern "C" {
pub fn rec_type_descr_p(str_: *const ::std::os::raw::c_char) -> bool;
}
unsafe extern "C" {
pub fn rec_type_kind(type_: rec_type_t) -> rec_type_kind_e;
}
unsafe extern "C" {
pub fn rec_type_kind_str(type_: rec_type_t) -> *mut ::std::os::raw::c_char;
}
unsafe extern "C" {
pub fn rec_type_min(type_: rec_type_t) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn rec_type_max(type_: rec_type_t) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn rec_type_rec(type_: rec_type_t) -> *const ::std::os::raw::c_char;
}
unsafe extern "C" {
pub fn rec_type_name(type_: rec_type_t) -> *const ::std::os::raw::c_char;
}
unsafe extern "C" {
pub fn rec_type_set_name(type_: rec_type_t, name: *const ::std::os::raw::c_char);
}
unsafe extern "C" {
pub fn rec_type_equal_p(type1: rec_type_t, type2: rec_type_t) -> bool;
}
unsafe extern "C" {
pub fn rec_type_check(
type_: rec_type_t,
str_: *const ::std::os::raw::c_char,
error_str: *mut *mut ::std::os::raw::c_char,
) -> bool;
}
unsafe extern "C" {
pub fn rec_type_values_cmp(
type_: rec_type_t,
val1: *const ::std::os::raw::c_char,
val2: *const ::std::os::raw::c_char,
) -> ::std::os::raw::c_int;
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct rec_type_reg_s {
_unused: [u8; 0],
}
pub type rec_type_reg_t = *mut rec_type_reg_s;
unsafe extern "C" {
pub fn rec_type_reg_new() -> rec_type_reg_t;
}
unsafe extern "C" {
pub fn rec_type_reg_destroy(reg: rec_type_reg_t);
}
unsafe extern "C" {
pub fn rec_type_reg_add(reg: rec_type_reg_t, type_: rec_type_t);
}
unsafe extern "C" {
pub fn rec_type_reg_add_synonym(
reg: rec_type_reg_t,
type_name: *const ::std::os::raw::c_char,
to_name: *const ::std::os::raw::c_char,
);
}
unsafe extern "C" {
pub fn rec_type_reg_get(
reg: rec_type_reg_t,
type_name: *const ::std::os::raw::c_char,
) -> rec_type_t;
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct rec_field_s {
_unused: [u8; 0],
}
pub type rec_field_t = *mut rec_field_s;
unsafe extern "C" {
#[doc = " Creating and destroying fields"]
pub fn rec_field_new(
name: *const ::std::os::raw::c_char,
value: *const ::std::os::raw::c_char,
) -> rec_field_t;
}
unsafe extern "C" {
pub fn rec_field_destroy(field: rec_field_t);
}
unsafe extern "C" {
pub fn rec_field_dup(field: rec_field_t) -> rec_field_t;
}
unsafe extern "C" {
#[doc = " Comparing fields"]
pub fn rec_field_equal_p(field1: rec_field_t, field2: rec_field_t) -> bool;
}
unsafe extern "C" {
#[doc = " Getting and Setting field properties"]
pub fn rec_field_name(field: rec_field_t) -> *const ::std::os::raw::c_char;
}
unsafe extern "C" {
pub fn rec_field_set_name(field: rec_field_t, name: *const ::std::os::raw::c_char) -> bool;
}
unsafe extern "C" {
pub fn rec_field_value(field: rec_field_t) -> *const ::std::os::raw::c_char;
}
unsafe extern "C" {
pub fn rec_field_set_value(field: rec_field_t, value: *const ::std::os::raw::c_char) -> bool;
}
unsafe extern "C" {
pub fn rec_field_source(field: rec_field_t) -> *const ::std::os::raw::c_char;
}
unsafe extern "C" {
pub fn rec_field_set_source(field: rec_field_t, source: *const ::std::os::raw::c_char) -> bool;
}
unsafe extern "C" {
pub fn rec_field_location(field: rec_field_t) -> usize;
}
unsafe extern "C" {
pub fn rec_field_location_str(field: rec_field_t) -> *const ::std::os::raw::c_char;
}
unsafe extern "C" {
pub fn rec_field_set_location(field: rec_field_t, location: usize) -> bool;
}
unsafe extern "C" {
pub fn rec_field_char_location(field: rec_field_t) -> usize;
}
unsafe extern "C" {
pub fn rec_field_char_location_str(field: rec_field_t) -> *const ::std::os::raw::c_char;
}
unsafe extern "C" {
pub fn rec_field_set_char_location(field: rec_field_t, location: usize) -> bool;
}
unsafe extern "C" {
pub fn rec_field_set_mark(field: rec_field_t, mark: ::std::os::raw::c_int);
}
unsafe extern "C" {
pub fn rec_field_mark(field: rec_field_t) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
#[doc = " Transformations in fields"]
pub fn rec_field_to_comment(field: rec_field_t) -> rec_comment_t;
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct rec_record_s {
_unused: [u8; 0],
}
pub type rec_record_t = *mut rec_record_s;
unsafe extern "C" {
#[doc = " Creating and destroying records"]
pub fn rec_record_new() -> rec_record_t;
}
unsafe extern "C" {
pub fn rec_record_destroy(record: rec_record_t);
}
unsafe extern "C" {
pub fn rec_record_dup(record: rec_record_t) -> rec_record_t;
}
unsafe extern "C" {
#[doc = " Comparing records"]
pub fn rec_record_subset_p(record1: rec_record_t, record2: rec_record_t) -> bool;
}
unsafe extern "C" {
pub fn rec_record_equal_p(record1: rec_record_t, record2: rec_record_t) -> bool;
}
unsafe extern "C" {
#[doc = " Getting and Setting record properties"]
pub fn rec_record_mset(record: rec_record_t) -> rec_mset_t;
}
unsafe extern "C" {
pub fn rec_record_num_elems(record: rec_record_t) -> usize;
}
unsafe extern "C" {
pub fn rec_record_num_fields(record: rec_record_t) -> usize;
}
unsafe extern "C" {
pub fn rec_record_num_comments(record: rec_record_t) -> usize;
}
unsafe extern "C" {
pub fn rec_record_source(record: rec_record_t) -> *mut ::std::os::raw::c_char;
}
unsafe extern "C" {
pub fn rec_record_set_source(record: rec_record_t, source: *mut ::std::os::raw::c_char);
}
unsafe extern "C" {
pub fn rec_record_location(record: rec_record_t) -> usize;
}
unsafe extern "C" {
pub fn rec_record_location_str(record: rec_record_t) -> *mut ::std::os::raw::c_char;
}
unsafe extern "C" {
pub fn rec_record_set_location(record: rec_record_t, location: usize);
}
unsafe extern "C" {
pub fn rec_record_char_location(record: rec_record_t) -> usize;
}
unsafe extern "C" {
pub fn rec_record_char_location_str(record: rec_record_t) -> *mut ::std::os::raw::c_char;
}
unsafe extern "C" {
pub fn rec_record_set_char_location(record: rec_record_t, char_location: usize);
}
unsafe extern "C" {
pub fn rec_record_get_field_index(record: rec_record_t, field: rec_field_t) -> usize;
}
unsafe extern "C" {
pub fn rec_record_get_field_index_by_name(record: rec_record_t, field: rec_field_t) -> usize;
}
unsafe extern "C" {
pub fn rec_record_contains_value(
record: rec_record_t,
value: *const ::std::os::raw::c_char,
case_insensitive: bool,
) -> bool;
}
unsafe extern "C" {
pub fn rec_record_contains_field(
record: rec_record_t,
field_name: *const ::std::os::raw::c_char,
field_value: *const ::std::os::raw::c_char,
) -> bool;
}
unsafe extern "C" {
pub fn rec_record_field_p(
record: rec_record_t,
field_name: *const ::std::os::raw::c_char,
) -> bool;
}
unsafe extern "C" {
pub fn rec_record_get_num_fields_by_name(
record: rec_record_t,
field_name: *const ::std::os::raw::c_char,
) -> usize;
}
unsafe extern "C" {
pub fn rec_record_get_field_by_name(
record: rec_record_t,
field_name: *const ::std::os::raw::c_char,
n: usize,
) -> rec_field_t;
}
unsafe extern "C" {
pub fn rec_record_remove_field_by_name(
record: rec_record_t,
field_name: *const ::std::os::raw::c_char,
n: usize,
);
}
unsafe extern "C" {
pub fn rec_record_container(record: rec_record_t) -> *mut ::std::os::raw::c_void;
}
unsafe extern "C" {
pub fn rec_record_set_container(record: rec_record_t, container: *mut ::std::os::raw::c_void);
}
unsafe extern "C" {
#[doc = " Transformations in records"]
pub fn rec_record_to_comment(record: rec_record_t) -> rec_comment_t;
}
unsafe extern "C" {
pub fn rec_record_uniq(record: rec_record_t);
}
unsafe extern "C" {
pub fn rec_record_append(dest_record: rec_record_t, src_record: rec_record_t);
}
unsafe extern "C" {
#[doc = " Field Marks in records"]
pub fn rec_record_reset_marks(record: rec_record_t);
}
unsafe extern "C" {
pub fn rec_record_mark_field(
record: rec_record_t,
field: rec_field_t,
mark: ::std::os::raw::c_int,
) -> bool;
}
unsafe extern "C" {
pub fn rec_record_field_mark(record: rec_record_t, field: rec_field_t)
-> ::std::os::raw::c_int;
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct rec_rset_s {
_unused: [u8; 0],
}
pub type rec_rset_t = *mut rec_rset_s;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct rec_sex_s {
_unused: [u8; 0],
}
pub type rec_sex_t = *mut rec_sex_s;
unsafe extern "C" {
#[doc = " Creating and destroying record sets"]
pub fn rec_rset_new() -> rec_rset_t;
}
unsafe extern "C" {
pub fn rec_rset_destroy(rset: rec_rset_t);
}
unsafe extern "C" {
pub fn rec_rset_dup(rset: rec_rset_t) -> rec_rset_t;
}
unsafe extern "C" {
#[doc = " Getting and Setting record set properties"]
pub fn rec_rset_mset(rset: rec_rset_t) -> rec_mset_t;
}
unsafe extern "C" {
pub fn rec_rset_num_elems(rset: rec_rset_t) -> usize;
}
unsafe extern "C" {
pub fn rec_rset_num_records(rset: rec_rset_t) -> usize;
}
unsafe extern "C" {
pub fn rec_rset_num_comments(rset: rec_rset_t) -> usize;
}
unsafe extern "C" {
#[doc = " Record descriptor management"]
pub fn rec_rset_descriptor(rset: rec_rset_t) -> rec_record_t;
}
unsafe extern "C" {
pub fn rec_rset_set_descriptor(rset: rec_rset_t, record: rec_record_t);
}
unsafe extern "C" {
pub fn rec_rset_descriptor_pos(rset: rec_rset_t) -> usize;
}
unsafe extern "C" {
pub fn rec_rset_set_descriptor_pos(rset: rec_rset_t, position: usize);
}
unsafe extern "C" {
pub fn rec_rset_url(rset: rec_rset_t) -> *mut ::std::os::raw::c_char;
}
unsafe extern "C" {
pub fn rec_rset_type(rset: rec_rset_t) -> *mut ::std::os::raw::c_char;
}
unsafe extern "C" {
pub fn rec_rset_set_type(rset: rec_rset_t, type_: *const ::std::os::raw::c_char);
}
unsafe extern "C" {
#[doc = " Management of the type registry"]
pub fn rec_rset_get_type_reg(rset: rec_rset_t) -> rec_type_reg_t;
}
unsafe extern "C" {
pub fn rec_rset_get_field_type(
rset: rec_rset_t,
field_name: *const ::std::os::raw::c_char,
) -> rec_type_t;
}
unsafe extern "C" {
#[doc = " Size constraints"]
pub fn rec_rset_min_records(rset: rec_rset_t) -> usize;
}
unsafe extern "C" {
pub fn rec_rset_max_records(rset: rec_rset_t) -> usize;
}
unsafe extern "C" {
#[doc = " Sex constraints"]
pub fn rec_rset_num_sex_constraints(rset: rec_rset_t) -> usize;
}
unsafe extern "C" {
pub fn rec_rset_sex_constraint(rset: rec_rset_t, index: usize) -> rec_sex_t;
}
unsafe extern "C" {
#[doc = " Other functionality"]
pub fn rec_rset_rename_field(
rset: rec_rset_t,
field_name: *const ::std::os::raw::c_char,
new_field_name: *const ::std::os::raw::c_char,
);
}
unsafe extern "C" {
pub fn rec_rset_auto(rset: rec_rset_t) -> rec_fex_t;
}
unsafe extern "C" {
pub fn rec_rset_key(rset: rec_rset_t) -> *const ::std::os::raw::c_char;
}
unsafe extern "C" {
pub fn rec_rset_confidential(rset: rec_rset_t) -> rec_fex_t;
}
unsafe extern "C" {
pub fn rec_rset_field_confidential_p(
rset: rec_rset_t,
field_name: *const ::std::os::raw::c_char,
) -> bool;
}
unsafe extern "C" {
pub fn rec_rset_source(rset: rec_rset_t) -> *mut ::std::os::raw::c_char;
}
unsafe extern "C" {
pub fn rec_rset_set_order_by_fields(rset: rec_rset_t, field_names: rec_fex_t) -> bool;
}
unsafe extern "C" {
pub fn rec_rset_order_by_fields(rset: rec_rset_t) -> rec_fex_t;
}
unsafe extern "C" {
pub fn rec_rset_sort(rset: rec_rset_t, sort_by: rec_fex_t) -> rec_rset_t;
}
unsafe extern "C" {
pub fn rec_rset_group(rset: rec_rset_t, group_by: rec_fex_t) -> rec_rset_t;
}
unsafe extern "C" {
pub fn rec_rset_add_auto_fields(rset: rec_rset_t, record: rec_record_t) -> rec_rset_t;
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct rec_db_s {
_unused: [u8; 0],
}
pub type rec_db_t = *mut rec_db_s;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct rec_aggregate_reg_s {
_unused: [u8; 0],
}
pub type rec_aggregate_reg_t = *mut rec_aggregate_reg_s;
unsafe extern "C" {
#[doc = " Creating and destrying databases"]
pub fn rec_db_new() -> rec_db_t;
}
unsafe extern "C" {
pub fn rec_db_destroy(db: rec_db_t);
}
unsafe extern "C" {
#[doc = " Getting and setting properties of databases"]
pub fn rec_db_size(db: rec_db_t) -> usize;
}
unsafe extern "C" {
#[doc = " Managing record sets in a database"]
pub fn rec_db_get_rset(db: rec_db_t, position: usize) -> rec_rset_t;
}
unsafe extern "C" {
pub fn rec_db_insert_rset(db: rec_db_t, rset: rec_rset_t, position: usize) -> bool;
}
unsafe extern "C" {
pub fn rec_db_remove_rset(db: rec_db_t, position: usize) -> bool;
}
unsafe extern "C" {
pub fn rec_db_type_p(db: rec_db_t, type_: *const ::std::os::raw::c_char) -> bool;
}
unsafe extern "C" {
pub fn rec_db_get_rset_by_type(
db: rec_db_t,
type_: *const ::std::os::raw::c_char,
) -> rec_rset_t;
}
unsafe extern "C" {
#[doc = " Miscellaneous database functions"]
pub fn rec_db_aggregates(db: rec_db_t) -> rec_aggregate_reg_t;
}
unsafe extern "C" {
pub fn rec_db_query(
db: rec_db_t,
type_: *const ::std::os::raw::c_char,
join: *const ::std::os::raw::c_char,
index: *mut usize,
sex: rec_sex_t,
fast_string: *const ::std::os::raw::c_char,
random: usize,
fex: rec_fex_t,
password: *const ::std::os::raw::c_char,
group_by: rec_fex_t,
sort_by: rec_fex_t,
flags: ::std::os::raw::c_int,
) -> rec_rset_t;
}
unsafe extern "C" {
pub fn rec_db_insert(
db: rec_db_t,
type_: *const ::std::os::raw::c_char,
index: *mut usize,
sex: rec_sex_t,
fast_string: *const ::std::os::raw::c_char,
random: usize,
password: *const ::std::os::raw::c_char,
record: rec_record_t,
flags: ::std::os::raw::c_int,
) -> bool;
}
unsafe extern "C" {
pub fn rec_db_delete(
db: rec_db_t,
type_: *const ::std::os::raw::c_char,
index: *mut usize,
sex: rec_sex_t,
fast_string: *const ::std::os::raw::c_char,
random: usize,
flags: ::std::os::raw::c_int,
) -> bool;
}
unsafe extern "C" {
pub fn rec_db_set(
db: rec_db_t,
type_: *const ::std::os::raw::c_char,
index: *mut usize,
sex: rec_sex_t,
fast_string: *const ::std::os::raw::c_char,
random: usize,
fex: rec_fex_t,
action: ::std::os::raw::c_int,
action_arg: *const ::std::os::raw::c_char,
flags: ::std::os::raw::c_int,
) -> bool;
}
unsafe extern "C" {
pub fn rec_int_check_db(
db: rec_db_t,
check_descriptors_p: bool,
remote_descriptors_p: bool,
errors: rec_buf_t,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn rec_int_check_rset(
db: rec_db_t,
rset: rec_rset_t,
check_descriptor_p: bool,
remote_descriptor_p: bool,
errors: rec_buf_t,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn rec_int_check_record(
db: rec_db_t,
rset: rec_rset_t,
orig_rec: rec_record_t,
rec: rec_record_t,
errors: rec_buf_t,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn rec_int_check_field_type(
db: rec_db_t,
rset: rec_rset_t,
field: rec_field_t,
errors: rec_buf_t,
) -> bool;
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct rec_parser_s {
_unused: [u8; 0],
}
pub type rec_parser_t = *mut rec_parser_s;
unsafe extern "C" {
#[doc = " Creating and destroying parsers"]
pub fn rec_parser_new(in_: *mut FILE, source: *const ::std::os::raw::c_char) -> rec_parser_t;
}
unsafe extern "C" {
pub fn rec_parser_new_mem(
buffer: *const ::std::os::raw::c_char,
size: usize,
source: *const ::std::os::raw::c_char,
) -> rec_parser_t;
}
unsafe extern "C" {
pub fn rec_parser_new_str(
buffer: *const ::std::os::raw::c_char,
source: *const ::std::os::raw::c_char,
) -> rec_parser_t;
}
unsafe extern "C" {
pub fn rec_parser_destroy(parser: rec_parser_t);
}
unsafe extern "C" {
#[doc = " Parsing routines"]
pub fn rec_parse_field_name(
parser: rec_parser_t,
fname: *mut *mut ::std::os::raw::c_char,
) -> bool;
}
unsafe extern "C" {
pub fn rec_parse_field_name_str(
str_: *const ::std::os::raw::c_char,
) -> *mut ::std::os::raw::c_char;
}
unsafe extern "C" {
pub fn rec_parse_field(parser: rec_parser_t, field: *mut rec_field_t) -> bool;
}
unsafe extern "C" {
pub fn rec_parse_record(parser: rec_parser_t, record: *mut rec_record_t) -> bool;
}
unsafe extern "C" {
pub fn rec_parse_record_str(str_: *const ::std::os::raw::c_char) -> rec_record_t;
}
unsafe extern "C" {
pub fn rec_parse_rset(parser: rec_parser_t, rset: *mut rec_rset_t) -> bool;
}
unsafe extern "C" {
pub fn rec_parse_db(parser: rec_parser_t, db: *mut rec_db_t) -> bool;
}
unsafe extern "C" {
#[doc = " Getting and Setting properties of parsers"]
pub fn rec_parser_eof(parser: rec_parser_t) -> bool;
}
unsafe extern "C" {
pub fn rec_parser_error(parser: rec_parser_t) -> bool;
}
unsafe extern "C" {
pub fn rec_parser_reset(parser: rec_parser_t);
}
unsafe extern "C" {
pub fn rec_parser_perror(parser: rec_parser_t, fmt: *const ::std::os::raw::c_char, ...);
}
unsafe extern "C" {
pub fn rec_parser_seek(parser: rec_parser_t, line_number: usize, position: usize) -> bool;
}
unsafe extern "C" {
pub fn rec_parser_tell(parser: rec_parser_t) -> ::std::os::raw::c_long;
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct rec_writer_s {
_unused: [u8; 0],
}
pub type rec_writer_t = *mut rec_writer_s;
pub const rec_writer_mode_e_REC_WRITER_NORMAL: rec_writer_mode_e = 0;
pub const rec_writer_mode_e_REC_WRITER_VALUES: rec_writer_mode_e = 1;
pub const rec_writer_mode_e_REC_WRITER_VALUES_ROW: rec_writer_mode_e = 2;
pub const rec_writer_mode_e_REC_WRITER_SEXP: rec_writer_mode_e = 3;
pub type rec_writer_mode_e = ::std::os::raw::c_uint;
pub use self::rec_writer_mode_e as rec_writer_mode_t;
unsafe extern "C" {
#[doc = " Creating and destroying writers"]
pub fn rec_writer_new(out: *mut FILE) -> rec_writer_t;
}
unsafe extern "C" {
pub fn rec_writer_new_str(
str_: *mut *mut ::std::os::raw::c_char,
str_size: *mut usize,
) -> rec_writer_t;
}
unsafe extern "C" {
pub fn rec_writer_destroy(writer: rec_writer_t);
}
unsafe extern "C" {
#[doc = " Getting and setting writer properties"]
pub fn rec_writer_set_collapse(writer: rec_writer_t, value: bool);
}
unsafe extern "C" {
pub fn rec_writer_set_skip_comments(writer: rec_writer_t, value: bool);
}
unsafe extern "C" {
pub fn rec_writer_set_mode(writer: rec_writer_t, mode: rec_writer_mode_e);
}
unsafe extern "C" {
#[doc = " Getting the properties of a writer"]
pub fn rec_writer_eof(writer: rec_writer_t) -> bool;
}
unsafe extern "C" {
#[doc = " Writing routines"]
pub fn rec_write_string(writer: rec_writer_t, str_: *const ::std::os::raw::c_char) -> bool;
}
unsafe extern "C" {
pub fn rec_write_comment(writer: rec_writer_t, comment: rec_comment_t) -> bool;
}
unsafe extern "C" {
pub fn rec_write_field_name(
writer: rec_writer_t,
field_name: *const ::std::os::raw::c_char,
) -> bool;
}
unsafe extern "C" {
pub fn rec_write_field(writer: rec_writer_t, field: rec_field_t) -> bool;
}
unsafe extern "C" {
pub fn rec_write_record(writer: rec_writer_t, record: rec_record_t) -> bool;
}
unsafe extern "C" {
pub fn rec_write_rset(writer: rec_writer_t, rset: rec_rset_t) -> bool;
}
unsafe extern "C" {
pub fn rec_write_db(writer: rec_writer_t, db: rec_db_t) -> bool;
}
unsafe extern "C" {
pub fn rec_write_field_name_str(
field_name: *const ::std::os::raw::c_char,
mode: rec_writer_mode_t,
) -> *mut ::std::os::raw::c_char;
}
unsafe extern "C" {
pub fn rec_write_field_str(
field: rec_field_t,
mode: rec_writer_mode_t,
) -> *mut ::std::os::raw::c_char;
}
unsafe extern "C" {
pub fn rec_write_comment_str(
comment: rec_comment_t,
mode: rec_writer_mode_t,
) -> *mut ::std::os::raw::c_char;
}
unsafe extern "C" {
#[doc = " Creating and destroying sexes"]
pub fn rec_sex_new(case_insensitive: bool) -> rec_sex_t;
}
unsafe extern "C" {
pub fn rec_sex_destroy(sex: rec_sex_t);
}
unsafe extern "C" {
#[doc = " Compiling and applying sexes"]
pub fn rec_sex_compile(sex: rec_sex_t, expr: *const ::std::os::raw::c_char) -> bool;
}
unsafe extern "C" {
pub fn rec_sex_eval(sex: rec_sex_t, record: rec_record_t, status: *mut bool) -> bool;
}
unsafe extern "C" {
pub fn rec_sex_eval_str(sex: rec_sex_t, record: rec_record_t) -> *mut ::std::os::raw::c_char;
}
unsafe extern "C" {
#[doc = " Miscellaneous sexes functions"]
pub fn rec_sex_print_ast(sex: rec_sex_t);
}
unsafe extern "C" {
#[doc = " Encryption routines"]
pub fn rec_encrypt(
in_: *mut ::std::os::raw::c_char,
in_size: usize,
password: *const ::std::os::raw::c_char,
out: *mut *mut ::std::os::raw::c_char,
out_size: *mut usize,
) -> bool;
}
unsafe extern "C" {
pub fn rec_encrypt_field(field: rec_field_t, password: *const ::std::os::raw::c_char) -> bool;
}
unsafe extern "C" {
pub fn rec_encrypt_record(
rset: rec_rset_t,
record: rec_record_t,
password: *const ::std::os::raw::c_char,
) -> bool;
}
unsafe extern "C" {
#[doc = " Decryption routines"]
pub fn rec_decrypt(
in_: *mut ::std::os::raw::c_char,
in_size: usize,
password: *const ::std::os::raw::c_char,
out: *mut *mut ::std::os::raw::c_char,
out_size: *mut usize,
) -> bool;
}
unsafe extern "C" {
pub fn rec_decrypt_field(field: rec_field_t, password: *const ::std::os::raw::c_char) -> bool;
}
unsafe extern "C" {
pub fn rec_decrypt_record(
rset: rec_rset_t,
record: rec_record_t,
password: *const ::std::os::raw::c_char,
) -> bool;
}
pub type rec_aggregate_t = ::std::option::Option<
unsafe extern "C" fn(
rset: rec_rset_t,
record: rec_record_t,
field_name: *const ::std::os::raw::c_char,
) -> *mut ::std::os::raw::c_char,
>;
unsafe extern "C" {
#[doc = " Creating and destroying function registries"]
pub fn rec_aggregate_reg_new() -> rec_aggregate_reg_t;
}
unsafe extern "C" {
pub fn rec_aggregate_reg_destroy(func_reg: rec_aggregate_reg_t);
}
unsafe extern "C" {
#[doc = " Registering functions and fetching them"]
pub fn rec_aggregate_reg_add(
func_reg: rec_aggregate_reg_t,
name: *const ::std::os::raw::c_char,
function: rec_aggregate_t,
) -> bool;
}
unsafe extern "C" {
pub fn rec_aggregate_reg_get(
func_get: rec_aggregate_reg_t,
name: *const ::std::os::raw::c_char,
) -> rec_aggregate_t;
}
unsafe extern "C" {
pub fn rec_aggregate_reg_add_standard(func_reg: rec_aggregate_reg_t);
}
unsafe extern "C" {
pub fn rec_aggregate_std_p(name: *const ::std::os::raw::c_char) -> bool;
}