1
2
3
/* automatically generated by rust-bindgen */

pub const EJDB_VERSION : & 'static [ u8 ; 7usize ] = b"1.2.12\0" ; pub const EJDB_VERSION_MAJOR : u32 = 1 ; pub const EJDB_VERSION_MINOR : u32 = 2 ; pub const EJDB_VERSION_PATCH : u32 = 12 ; pub const INVALID_HANDLE_VALUE : i32 = -1 ; pub const JDBIDKEYNAME : & 'static [ u8 ; 4usize ] = b"_id\0" ; pub const JDBIDKEYNAMEL : u32 = 3 ; pub const _STDIO_H : u32 = 1 ; pub const _FEATURES_H : u32 = 1 ; pub const _DEFAULT_SOURCE : u32 = 1 ; pub const __USE_ISOC11 : u32 = 1 ; pub const __USE_ISOC99 : u32 = 1 ; pub const __USE_ISOC95 : u32 = 1 ; pub const __USE_POSIX_IMPLICITLY : u32 = 1 ; pub const _POSIX_SOURCE : u32 = 1 ; pub const _POSIX_C_SOURCE : u32 = 200809 ; pub const __USE_POSIX : u32 = 1 ; pub const __USE_POSIX2 : u32 = 1 ; pub const __USE_POSIX199309 : u32 = 1 ; pub const __USE_POSIX199506 : u32 = 1 ; pub const __USE_XOPEN2K : u32 = 1 ; pub const __USE_XOPEN2K8 : u32 = 1 ; pub const _ATFILE_SOURCE : u32 = 1 ; pub const __USE_MISC : u32 = 1 ; pub const __USE_ATFILE : u32 = 1 ; pub const __USE_FORTIFY_LEVEL : u32 = 0 ; pub const __GLIBC_USE_DEPRECATED_GETS : u32 = 0 ; pub const _STDC_PREDEF_H : u32 = 1 ; pub const __STDC_IEC_559__ : u32 = 1 ; pub const __STDC_IEC_559_COMPLEX__ : u32 = 1 ; pub const __STDC_ISO_10646__ : u32 = 201706 ; pub const __STDC_NO_THREADS__ : u32 = 1 ; pub const __GNU_LIBRARY__ : u32 = 6 ; pub const __GLIBC__ : u32 = 2 ; pub const __GLIBC_MINOR__ : u32 = 27 ; pub const _SYS_CDEFS_H : u32 = 1 ; pub const __glibc_c99_flexarr_available : u32 = 1 ; pub const __WORDSIZE : u32 = 64 ; pub const __WORDSIZE_TIME64_COMPAT32 : u32 = 1 ; pub const __SYSCALL_WORDSIZE : u32 = 64 ; pub const __HAVE_GENERIC_SELECTION : u32 = 1 ; pub const __GLIBC_USE_LIB_EXT2 : u32 = 0 ; pub const __GLIBC_USE_IEC_60559_BFP_EXT : u32 = 0 ; pub const __GLIBC_USE_IEC_60559_FUNCS_EXT : u32 = 0 ; pub const __GLIBC_USE_IEC_60559_TYPES_EXT : u32 = 0 ; pub const _BITS_TYPES_H : u32 = 1 ; pub const _BITS_TYPESIZES_H : u32 = 1 ; pub const __OFF_T_MATCHES_OFF64_T : u32 = 1 ; pub const __INO_T_MATCHES_INO64_T : u32 = 1 ; pub const __RLIM_T_MATCHES_RLIM64_T : u32 = 1 ; pub const __FD_SETSIZE : u32 = 1024 ; pub const ____FILE_defined : u32 = 1 ; pub const __FILE_defined : u32 = 1 ; pub const _BITS_LIBIO_H : u32 = 1 ; pub const _BITS_G_CONFIG_H : u32 = 1 ; pub const ____mbstate_t_defined : u32 = 1 ; pub const _G_HAVE_MMAP : u32 = 1 ; pub const _G_HAVE_MREMAP : u32 = 1 ; pub const _G_IO_IO_FILE_VERSION : u32 = 131073 ; pub const _G_BUFSIZ : u32 = 8192 ; pub const _IO_BUFSIZ : u32 = 8192 ; pub const __GNUC_VA_LIST : u32 = 1 ; pub const _IO_UNIFIED_JUMPTABLES : u32 = 1 ; pub const EOF : i32 = -1 ; pub const _IOS_INPUT : u32 = 1 ; pub const _IOS_OUTPUT : u32 = 2 ; pub const _IOS_ATEND : u32 = 4 ; pub const _IOS_APPEND : u32 = 8 ; pub const _IOS_TRUNC : u32 = 16 ; pub const _IOS_NOCREATE : u32 = 32 ; pub const _IOS_NOREPLACE : u32 = 64 ; pub const _IOS_BIN : u32 = 128 ; pub const _IO_MAGIC : u32 = 4222418944 ; pub const _OLD_STDIO_MAGIC : u32 = 4206624768 ; pub const _IO_MAGIC_MASK : u32 = 4294901760 ; pub const _IO_USER_BUF : u32 = 1 ; pub const _IO_UNBUFFERED : u32 = 2 ; pub const _IO_NO_READS : u32 = 4 ; pub const _IO_NO_WRITES : u32 = 8 ; pub const _IO_EOF_SEEN : u32 = 16 ; pub const _IO_ERR_SEEN : u32 = 32 ; pub const _IO_DELETE_DONT_CLOSE : u32 = 64 ; pub const _IO_LINKED : u32 = 128 ; pub const _IO_IN_BACKUP : u32 = 256 ; pub const _IO_LINE_BUF : u32 = 512 ; pub const _IO_TIED_PUT_GET : u32 = 1024 ; pub const _IO_CURRENTLY_PUTTING : u32 = 2048 ; pub const _IO_IS_APPENDING : u32 = 4096 ; pub const _IO_IS_FILEBUF : u32 = 8192 ; pub const _IO_BAD_SEEN : u32 = 16384 ; pub const _IO_USER_LOCK : u32 = 32768 ; pub const _IO_FLAGS2_MMAP : u32 = 1 ; pub const _IO_FLAGS2_NOTCANCEL : u32 = 2 ; pub const _IO_FLAGS2_USER_WBUF : u32 = 8 ; pub const _IO_SKIPWS : u32 = 1 ; pub const _IO_LEFT : u32 = 2 ; pub const _IO_RIGHT : u32 = 4 ; pub const _IO_INTERNAL : u32 = 8 ; pub const _IO_DEC : u32 = 16 ; pub const _IO_OCT : u32 = 32 ; pub const _IO_HEX : u32 = 64 ; pub const _IO_SHOWBASE : u32 = 128 ; pub const _IO_SHOWPOINT : u32 = 256 ; pub const _IO_UPPERCASE : u32 = 512 ; pub const _IO_SHOWPOS : u32 = 1024 ; pub const _IO_SCIENTIFIC : u32 = 2048 ; pub const _IO_FIXED : u32 = 4096 ; pub const _IO_UNITBUF : u32 = 8192 ; pub const _IO_STDIO : u32 = 16384 ; pub const _IO_DONT_CLOSE : u32 = 32768 ; pub const _IO_BOOLALPHA : u32 = 65536 ; pub const _IOFBF : u32 = 0 ; pub const _IOLBF : u32 = 1 ; pub const _IONBF : u32 = 2 ; pub const BUFSIZ : u32 = 8192 ; pub const SEEK_SET : u32 = 0 ; pub const SEEK_CUR : u32 = 1 ; pub const SEEK_END : u32 = 2 ; pub const P_tmpdir : & 'static [ u8 ; 5usize ] = b"/tmp\0" ; pub const _BITS_STDIO_LIM_H : u32 = 1 ; pub const L_tmpnam : u32 = 20 ; pub const TMP_MAX : u32 = 238328 ; pub const FILENAME_MAX : u32 = 4096 ; pub const L_ctermid : u32 = 9 ; pub const FOPEN_MAX : u32 = 16 ; pub const _STDINT_H : u32 = 1 ; pub const _BITS_WCHAR_H : u32 = 1 ; pub const _BITS_STDINT_INTN_H : u32 = 1 ; pub const _BITS_STDINT_UINTN_H : u32 = 1 ; pub const INT8_MIN : i32 = -128 ; pub const INT16_MIN : i32 = -32768 ; pub const INT32_MIN : i32 = -2147483648 ; pub const INT8_MAX : u32 = 127 ; pub const INT16_MAX : u32 = 32767 ; pub const INT32_MAX : u32 = 2147483647 ; pub const UINT8_MAX : u32 = 255 ; pub const UINT16_MAX : u32 = 65535 ; pub const UINT32_MAX : u32 = 4294967295 ; pub const INT_LEAST8_MIN : i32 = -128 ; pub const INT_LEAST16_MIN : i32 = -32768 ; pub const INT_LEAST32_MIN : i32 = -2147483648 ; pub const INT_LEAST8_MAX : u32 = 127 ; pub const INT_LEAST16_MAX : u32 = 32767 ; pub const INT_LEAST32_MAX : u32 = 2147483647 ; pub const UINT_LEAST8_MAX : u32 = 255 ; pub const UINT_LEAST16_MAX : u32 = 65535 ; pub const UINT_LEAST32_MAX : u32 = 4294967295 ; pub const INT_FAST8_MIN : i32 = -128 ; pub const INT_FAST16_MIN : i64 = -9223372036854775808 ; pub const INT_FAST32_MIN : i64 = -9223372036854775808 ; pub const INT_FAST8_MAX : u32 = 127 ; pub const INT_FAST16_MAX : u64 = 9223372036854775807 ; pub const INT_FAST32_MAX : u64 = 9223372036854775807 ; pub const UINT_FAST8_MAX : u32 = 255 ; pub const UINT_FAST16_MAX : i32 = -1 ; pub const UINT_FAST32_MAX : i32 = -1 ; pub const INTPTR_MIN : i64 = -9223372036854775808 ; pub const INTPTR_MAX : u64 = 9223372036854775807 ; pub const UINTPTR_MAX : i32 = -1 ; pub const PTRDIFF_MIN : i64 = -9223372036854775808 ; pub const PTRDIFF_MAX : u64 = 9223372036854775807 ; pub const SIG_ATOMIC_MIN : i32 = -2147483648 ; pub const SIG_ATOMIC_MAX : u32 = 2147483647 ; pub const SIZE_MAX : i32 = -1 ; pub const WINT_MIN : u32 = 0 ; pub const WINT_MAX : u32 = 4294967295 ; pub const true_ : u32 = 1 ; pub const false_ : u32 = 0 ; pub const __bool_true_false_are_defined : u32 = 1 ; pub const _TIME_H : u32 = 1 ; pub const _BITS_TIME_H : u32 = 1 ; pub const CLOCK_REALTIME : u32 = 0 ; pub const CLOCK_MONOTONIC : u32 = 1 ; pub const CLOCK_PROCESS_CPUTIME_ID : u32 = 2 ; pub const CLOCK_THREAD_CPUTIME_ID : u32 = 3 ; pub const CLOCK_MONOTONIC_RAW : u32 = 4 ; pub const CLOCK_REALTIME_COARSE : u32 = 5 ; pub const CLOCK_MONOTONIC_COARSE : u32 = 6 ; pub const CLOCK_BOOTTIME : u32 = 7 ; pub const CLOCK_REALTIME_ALARM : u32 = 8 ; pub const CLOCK_BOOTTIME_ALARM : u32 = 9 ; pub const CLOCK_TAI : u32 = 11 ; pub const TIMER_ABSTIME : u32 = 1 ; pub const __clock_t_defined : u32 = 1 ; pub const __time_t_defined : u32 = 1 ; pub const __struct_tm_defined : u32 = 1 ; pub const __timespec_defined : u32 = 1 ; pub const __clockid_t_defined : u32 = 1 ; pub const __timer_t_defined : u32 = 1 ; pub const __itimerspec_defined : u32 = 1 ; pub const _BITS_TYPES_LOCALE_T_H : u32 = 1 ; pub const _BITS_TYPES___LOCALE_T_H : u32 = 1 ; pub const TIME_UTC : u32 = 1 ; pub const _STDLIB_H : u32 = 1 ; pub const WNOHANG : u32 = 1 ; pub const WUNTRACED : u32 = 2 ; pub const WSTOPPED : u32 = 2 ; pub const WEXITED : u32 = 4 ; pub const WCONTINUED : u32 = 8 ; pub const WNOWAIT : u32 = 16777216 ; pub const __WNOTHREAD : u32 = 536870912 ; pub const __WALL : u32 = 1073741824 ; pub const __WCLONE : u32 = 2147483648 ; pub const __ENUM_IDTYPE_T : u32 = 1 ; pub const __W_CONTINUED : u32 = 65535 ; pub const __WCOREFLAG : u32 = 128 ; pub const __HAVE_FLOAT128 : u32 = 0 ; pub const __HAVE_DISTINCT_FLOAT128 : u32 = 0 ; pub const __HAVE_FLOAT64X : u32 = 1 ; pub const __HAVE_FLOAT64X_LONG_DOUBLE : u32 = 1 ; pub const __HAVE_FLOAT16 : u32 = 0 ; pub const __HAVE_FLOAT32 : u32 = 1 ; pub const __HAVE_FLOAT64 : u32 = 1 ; pub const __HAVE_FLOAT32X : u32 = 1 ; pub const __HAVE_FLOAT128X : u32 = 0 ; pub const __HAVE_DISTINCT_FLOAT16 : u32 = 0 ; pub const __HAVE_DISTINCT_FLOAT32 : u32 = 0 ; pub const __HAVE_DISTINCT_FLOAT64 : u32 = 0 ; pub const __HAVE_DISTINCT_FLOAT32X : u32 = 0 ; pub const __HAVE_DISTINCT_FLOAT64X : u32 = 0 ; pub const __HAVE_DISTINCT_FLOAT128X : u32 = 0 ; pub const __HAVE_FLOATN_NOT_TYPEDEF : u32 = 0 ; pub const __ldiv_t_defined : u32 = 1 ; pub const __lldiv_t_defined : u32 = 1 ; pub const RAND_MAX : u32 = 2147483647 ; pub const EXIT_FAILURE : u32 = 1 ; pub const EXIT_SUCCESS : u32 = 0 ; pub const _SYS_TYPES_H : u32 = 1 ; pub const __BIT_TYPES_DEFINED__ : u32 = 1 ; pub const _ENDIAN_H : u32 = 1 ; pub const __LITTLE_ENDIAN : u32 = 1234 ; pub const __BIG_ENDIAN : u32 = 4321 ; pub const __PDP_ENDIAN : u32 = 3412 ; pub const __BYTE_ORDER : u32 = 1234 ; pub const __FLOAT_WORD_ORDER : u32 = 1234 ; pub const LITTLE_ENDIAN : u32 = 1234 ; pub const BIG_ENDIAN : u32 = 4321 ; pub const PDP_ENDIAN : u32 = 3412 ; pub const BYTE_ORDER : u32 = 1234 ; pub const _BITS_BYTESWAP_H : u32 = 1 ; pub const _BITS_UINTN_IDENTITY_H : u32 = 1 ; pub const _SYS_SELECT_H : u32 = 1 ; pub const __FD_ZERO_STOS : & 'static [ u8 ; 6usize ] = b"stosq\0" ; pub const __sigset_t_defined : u32 = 1 ; pub const __timeval_defined : u32 = 1 ; pub const FD_SETSIZE : u32 = 1024 ; pub const _SYS_SYSMACROS_H : u32 = 1 ; pub const _BITS_SYSMACROS_H : u32 = 1 ; pub const _BITS_PTHREADTYPES_COMMON_H : u32 = 1 ; pub const _THREAD_SHARED_TYPES_H : u32 = 1 ; pub const _BITS_PTHREADTYPES_ARCH_H : u32 = 1 ; pub const __SIZEOF_PTHREAD_MUTEX_T : u32 = 40 ; pub const __SIZEOF_PTHREAD_ATTR_T : u32 = 56 ; pub const __SIZEOF_PTHREAD_RWLOCK_T : u32 = 56 ; pub const __SIZEOF_PTHREAD_BARRIER_T : u32 = 32 ; pub const __SIZEOF_PTHREAD_MUTEXATTR_T : u32 = 4 ; pub const __SIZEOF_PTHREAD_COND_T : u32 = 48 ; pub const __SIZEOF_PTHREAD_CONDATTR_T : u32 = 4 ; pub const __SIZEOF_PTHREAD_RWLOCKATTR_T : u32 = 8 ; pub const __SIZEOF_PTHREAD_BARRIERATTR_T : u32 = 4 ; pub const __PTHREAD_MUTEX_LOCK_ELISION : u32 = 1 ; pub const __PTHREAD_MUTEX_NUSERS_AFTER_KIND : u32 = 0 ; pub const __PTHREAD_MUTEX_USE_UNION : u32 = 0 ; pub const __PTHREAD_RWLOCK_INT_FLAGS_SHARED : u32 = 1 ; pub const __PTHREAD_MUTEX_HAVE_PREV : u32 = 1 ; pub const __have_pthread_attr_t : u32 = 1 ; pub const _ALLOCA_H : u32 = 1 ; pub const _LIBC_LIMITS_H_ : u32 = 1 ; pub const MB_LEN_MAX : u32 = 16 ; pub const _BITS_POSIX1_LIM_H : u32 = 1 ; pub const _POSIX_AIO_LISTIO_MAX : u32 = 2 ; pub const _POSIX_AIO_MAX : u32 = 1 ; pub const _POSIX_ARG_MAX : u32 = 4096 ; pub const _POSIX_CHILD_MAX : u32 = 25 ; pub const _POSIX_DELAYTIMER_MAX : u32 = 32 ; pub const _POSIX_HOST_NAME_MAX : u32 = 255 ; pub const _POSIX_LINK_MAX : u32 = 8 ; pub const _POSIX_LOGIN_NAME_MAX : u32 = 9 ; pub const _POSIX_MAX_CANON : u32 = 255 ; pub const _POSIX_MAX_INPUT : u32 = 255 ; pub const _POSIX_MQ_OPEN_MAX : u32 = 8 ; pub const _POSIX_MQ_PRIO_MAX : u32 = 32 ; pub const _POSIX_NAME_MAX : u32 = 14 ; pub const _POSIX_NGROUPS_MAX : u32 = 8 ; pub const _POSIX_OPEN_MAX : u32 = 20 ; pub const _POSIX_PATH_MAX : u32 = 256 ; pub const _POSIX_PIPE_BUF : u32 = 512 ; pub const _POSIX_RE_DUP_MAX : u32 = 255 ; pub const _POSIX_RTSIG_MAX : u32 = 8 ; pub const _POSIX_SEM_NSEMS_MAX : u32 = 256 ; pub const _POSIX_SEM_VALUE_MAX : u32 = 32767 ; pub const _POSIX_SIGQUEUE_MAX : u32 = 32 ; pub const _POSIX_SSIZE_MAX : u32 = 32767 ; pub const _POSIX_STREAM_MAX : u32 = 8 ; pub const _POSIX_SYMLINK_MAX : u32 = 255 ; pub const _POSIX_SYMLOOP_MAX : u32 = 8 ; pub const _POSIX_TIMER_MAX : u32 = 32 ; pub const _POSIX_TTY_NAME_MAX : u32 = 9 ; pub const _POSIX_TZNAME_MAX : u32 = 6 ; pub const _POSIX_CLOCKRES_MIN : u32 = 20000000 ; pub const NR_OPEN : u32 = 1024 ; pub const NGROUPS_MAX : u32 = 65536 ; pub const ARG_MAX : u32 = 131072 ; pub const LINK_MAX : u32 = 127 ; pub const MAX_CANON : u32 = 255 ; pub const MAX_INPUT : u32 = 255 ; pub const NAME_MAX : u32 = 255 ; pub const PATH_MAX : u32 = 4096 ; pub const PIPE_BUF : u32 = 4096 ; pub const XATTR_NAME_MAX : u32 = 255 ; pub const XATTR_SIZE_MAX : u32 = 65536 ; pub const XATTR_LIST_MAX : u32 = 65536 ; pub const RTSIG_MAX : u32 = 32 ; pub const _POSIX_THREAD_KEYS_MAX : u32 = 128 ; pub const PTHREAD_KEYS_MAX : u32 = 1024 ; pub const _POSIX_THREAD_DESTRUCTOR_ITERATIONS : u32 = 4 ; pub const PTHREAD_DESTRUCTOR_ITERATIONS : u32 = 4 ; pub const _POSIX_THREAD_THREADS_MAX : u32 = 64 ; pub const AIO_PRIO_DELTA_MAX : u32 = 20 ; pub const PTHREAD_STACK_MIN : u32 = 16384 ; pub const DELAYTIMER_MAX : u32 = 2147483647 ; pub const TTY_NAME_MAX : u32 = 32 ; pub const LOGIN_NAME_MAX : u32 = 256 ; pub const HOST_NAME_MAX : u32 = 64 ; pub const MQ_PRIO_MAX : u32 = 32768 ; pub const SEM_VALUE_MAX : u32 = 2147483647 ; pub const _BITS_POSIX2_LIM_H : u32 = 1 ; pub const _POSIX2_BC_BASE_MAX : u32 = 99 ; pub const _POSIX2_BC_DIM_MAX : u32 = 2048 ; pub const _POSIX2_BC_SCALE_MAX : u32 = 99 ; pub const _POSIX2_BC_STRING_MAX : u32 = 1000 ; pub const _POSIX2_COLL_WEIGHTS_MAX : u32 = 2 ; pub const _POSIX2_EXPR_NEST_MAX : u32 = 32 ; pub const _POSIX2_LINE_MAX : u32 = 2048 ; pub const _POSIX2_RE_DUP_MAX : u32 = 255 ; pub const _POSIX2_CHARCLASS_NAME_MAX : u32 = 14 ; pub const BC_BASE_MAX : u32 = 99 ; pub const BC_DIM_MAX : u32 = 2048 ; pub const BC_SCALE_MAX : u32 = 99 ; pub const BC_STRING_MAX : u32 = 1000 ; pub const COLL_WEIGHTS_MAX : u32 = 255 ; pub const EXPR_NEST_MAX : u32 = 32 ; pub const LINE_MAX : u32 = 2048 ; pub const CHARCLASS_NAME_MAX : u32 = 2048 ; pub const RE_DUP_MAX : u32 = 32767 ; pub const _MATH_H : u32 = 1 ; pub const _BITS_LIBM_SIMD_DECL_STUBS_H : u32 = 1 ; pub const __FP_LOGB0_IS_MIN : u32 = 1 ; pub const __FP_LOGBNAN_IS_MIN : u32 = 1 ; pub const FP_ILOGB0 : i32 = -2147483648 ; pub const FP_ILOGBNAN : i32 = -2147483648 ; pub const __MATH_DECLARING_DOUBLE : u32 = 1 ; pub const __MATH_DECLARING_FLOATN : u32 = 0 ; pub const __MATH_DECLARE_LDOUBLE : u32 = 1 ; pub const MATH_ERRNO : u32 = 1 ; pub const MATH_ERREXCEPT : u32 = 2 ; pub const math_errhandling : u32 = 3 ; pub const M_E : f64 = 2.718281828459045 ; pub const M_LOG2E : f64 = 1.4426950408889634 ; pub const M_LOG10E : f64 = 0.4342944819032518 ; pub const M_LN2 : f64 = 0.6931471805599453 ; pub const M_LN10 : f64 = 2.302585092994046 ; pub const M_PI : f64 = 3.141592653589793 ; pub const M_PI_2 : f64 = 1.5707963267948966 ; pub const M_PI_4 : f64 = 0.7853981633974483 ; pub const M_1_PI : f64 = 0.3183098861837907 ; pub const M_2_PI : f64 = 0.6366197723675814 ; pub const M_2_SQRTPI : f64 = 1.1283791670955126 ; pub const M_SQRT2 : f64 = 1.4142135623730951 ; pub const M_SQRT1_2 : f64 = 0.7071067811865476 ; pub const TCMAPTINYBNUM : u32 = 31 ; pub const TCLISTINYNUM : u32 = 31 ; pub const TCFILEMODE : u32 = 420 ; pub const TCIOBUFSIZ : u32 = 16384 ; pub const _TC_LIBVER : u32 = 911 ; pub const _TC_FORMATVER : & 'static [ u8 ; 4usize ] = b"1.0\0" ; pub const BSON_OK : u32 = 0 ; pub const BSON_ERROR : i32 = -1 ; pub const BSON_MAX_FPATH_LEN : u32 = 255 ; pub const EJDB_MAX_IMPORTED_BSON_SIZE : u32 = 67108864 ; pub const JBMAXCOLNAMELEN : u32 = 128 ; pub type HANDLE = :: std :: os :: raw :: c_int ; pub type __u_char = :: std :: os :: raw :: c_uchar ; pub type __u_short = :: std :: os :: raw :: c_ushort ; pub type __u_int = :: std :: os :: raw :: c_uint ; pub type __u_long = :: std :: os :: raw :: c_ulong ; pub type __int8_t = :: std :: os :: raw :: c_schar ; pub type __uint8_t = :: std :: os :: raw :: c_uchar ; pub type __int16_t = :: std :: os :: raw :: c_short ; pub type __uint16_t = :: std :: os :: raw :: c_ushort ; pub type __int32_t = :: std :: os :: raw :: c_int ; pub type __uint32_t = :: std :: os :: raw :: c_uint ; pub type __int64_t = :: std :: os :: raw :: c_long ; pub type __uint64_t = :: std :: os :: raw :: c_ulong ; pub type __quad_t = :: std :: os :: raw :: c_long ; pub type __u_quad_t = :: std :: os :: raw :: c_ulong ; pub type __intmax_t = :: std :: os :: raw :: c_long ; pub type __uintmax_t = :: std :: os :: raw :: c_ulong ; pub type __dev_t = :: std :: os :: raw :: c_ulong ; pub type __uid_t = :: std :: os :: raw :: c_uint ; pub type __gid_t = :: std :: os :: raw :: c_uint ; pub type __ino_t = :: std :: os :: raw :: c_ulong ; pub type __ino64_t = :: std :: os :: raw :: c_ulong ; pub type __mode_t = :: std :: os :: raw :: c_uint ; pub type __nlink_t = :: std :: os :: raw :: c_ulong ; pub type __off_t = :: std :: os :: raw :: c_long ; pub type __off64_t = :: std :: os :: raw :: c_long ; pub type __pid_t = :: std :: os :: raw :: c_int ; # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct __fsid_t { pub __val : [ :: std :: os :: raw :: c_int ; 2usize ] , } # [ test ] fn bindgen_test_layout___fsid_t ( ) { assert_eq ! ( :: std :: mem :: size_of :: < __fsid_t > ( ) , 8usize , concat ! ( "Size of: " , stringify ! ( __fsid_t ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < __fsid_t > ( ) , 4usize , concat ! ( "Alignment of " , stringify ! ( __fsid_t ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __fsid_t > ( ) ) ) . __val as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( __fsid_t ) , "::" , stringify ! ( __val ) ) ) ; } pub type __clock_t = :: std :: os :: raw :: c_long ; pub type __rlim_t = :: std :: os :: raw :: c_ulong ; pub type __rlim64_t = :: std :: os :: raw :: c_ulong ; pub type __id_t = :: std :: os :: raw :: c_uint ; pub type __time_t = :: std :: os :: raw :: c_long ; pub type __useconds_t = :: std :: os :: raw :: c_uint ; pub type __suseconds_t = :: std :: os :: raw :: c_long ; pub type __daddr_t = :: std :: os :: raw :: c_int ; pub type __key_t = :: std :: os :: raw :: c_int ; pub type __clockid_t = :: std :: os :: raw :: c_int ; pub type __timer_t = * mut :: std :: os :: raw :: c_void ; pub type __blksize_t = :: std :: os :: raw :: c_long ; pub type __blkcnt_t = :: std :: os :: raw :: c_long ; pub type __blkcnt64_t = :: std :: os :: raw :: c_long ; pub type __fsblkcnt_t = :: std :: os :: raw :: c_ulong ; pub type __fsblkcnt64_t = :: std :: os :: raw :: c_ulong ; pub type __fsfilcnt_t = :: std :: os :: raw :: c_ulong ; pub type __fsfilcnt64_t = :: std :: os :: raw :: c_ulong ; pub type __fsword_t = :: std :: os :: raw :: c_long ; pub type __ssize_t = :: std :: os :: raw :: c_long ; pub type __syscall_slong_t = :: std :: os :: raw :: c_long ; pub type __syscall_ulong_t = :: std :: os :: raw :: c_ulong ; pub type __loff_t = __off64_t ; pub type __caddr_t = * mut :: std :: os :: raw :: c_char ; pub type __intptr_t = :: std :: os :: raw :: c_long ; pub type __socklen_t = :: std :: os :: raw :: c_uint ; pub type __sig_atomic_t = :: std :: os :: raw :: c_int ; pub type __FILE = _IO_FILE ; pub type FILE = _IO_FILE ; # [ repr ( C ) ] # [ derive ( Copy , Clone ) ] pub struct __mbstate_t { pub __count : :: std :: os :: raw :: c_int , pub __value : __mbstate_t__bindgen_ty_1 , } # [ repr ( C ) ] # [ derive ( Copy , Clone ) ] pub union __mbstate_t__bindgen_ty_1 { pub __wch : :: std :: os :: raw :: c_uint , pub __wchb : [ :: std :: os :: raw :: c_char ; 4usize ] , _bindgen_union_align : u32 , } # [ test ] fn bindgen_test_layout___mbstate_t__bindgen_ty_1 ( ) { assert_eq ! ( :: std :: mem :: size_of :: < __mbstate_t__bindgen_ty_1 > ( ) , 4usize , concat ! ( "Size of: " , stringify ! ( __mbstate_t__bindgen_ty_1 ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < __mbstate_t__bindgen_ty_1 > ( ) , 4usize , concat ! ( "Alignment of " , stringify ! ( __mbstate_t__bindgen_ty_1 ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __mbstate_t__bindgen_ty_1 > ( ) ) ) . __wch as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( __mbstate_t__bindgen_ty_1 ) , "::" , stringify ! ( __wch ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __mbstate_t__bindgen_ty_1 > ( ) ) ) . __wchb as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( __mbstate_t__bindgen_ty_1 ) , "::" , stringify ! ( __wchb ) ) ) ; } # [ test ] fn bindgen_test_layout___mbstate_t ( ) { assert_eq ! ( :: std :: mem :: size_of :: < __mbstate_t > ( ) , 8usize , concat ! ( "Size of: " , stringify ! ( __mbstate_t ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < __mbstate_t > ( ) , 4usize , concat ! ( "Alignment of " , stringify ! ( __mbstate_t ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __mbstate_t > ( ) ) ) . __count as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( __mbstate_t ) , "::" , stringify ! ( __count ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __mbstate_t > ( ) ) ) . __value as * const _ as usize } , 4usize , concat ! ( "Offset of field: " , stringify ! ( __mbstate_t ) , "::" , stringify ! ( __value ) ) ) ; } # [ repr ( C ) ] # [ derive ( Copy , Clone ) ] pub struct _G_fpos_t { pub __pos : __off_t , pub __state : __mbstate_t , } # [ test ] fn bindgen_test_layout__G_fpos_t ( ) { assert_eq ! ( :: std :: mem :: size_of :: < _G_fpos_t > ( ) , 16usize , concat ! ( "Size of: " , stringify ! ( _G_fpos_t ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < _G_fpos_t > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( _G_fpos_t ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _G_fpos_t > ( ) ) ) . __pos as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( _G_fpos_t ) , "::" , stringify ! ( __pos ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _G_fpos_t > ( ) ) ) . __state as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( _G_fpos_t ) , "::" , stringify ! ( __state ) ) ) ; } # [ repr ( C ) ] # [ derive ( Copy , Clone ) ] pub struct _G_fpos64_t { pub __pos : __off64_t , pub __state : __mbstate_t , } # [ test ] fn bindgen_test_layout__G_fpos64_t ( ) { assert_eq ! ( :: std :: mem :: size_of :: < _G_fpos64_t > ( ) , 16usize , concat ! ( "Size of: " , stringify ! ( _G_fpos64_t ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < _G_fpos64_t > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( _G_fpos64_t ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _G_fpos64_t > ( ) ) ) . __pos as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( _G_fpos64_t ) , "::" , stringify ! ( __pos ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _G_fpos64_t > ( ) ) ) . __state as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( _G_fpos64_t ) , "::" , stringify ! ( __state ) ) ) ; } pub type va_list = __builtin_va_list ; pub type __gnuc_va_list = __builtin_va_list ; # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct _IO_jump_t { _unused : [ u8 ; 0 ] , } pub type _IO_lock_t = :: std :: os :: raw :: c_void ; # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct _IO_marker { pub _next : * mut _IO_marker , pub _sbuf : * mut _IO_FILE , pub _pos : :: std :: os :: raw :: c_int , } # [ test ] fn bindgen_test_layout__IO_marker ( ) { assert_eq ! ( :: std :: mem :: size_of :: < _IO_marker > ( ) , 24usize , concat ! ( "Size of: " , stringify ! ( _IO_marker ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < _IO_marker > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( _IO_marker ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _IO_marker > ( ) ) ) . _next as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( _IO_marker ) , "::" , stringify ! ( _next ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _IO_marker > ( ) ) ) . _sbuf as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( _IO_marker ) , "::" , stringify ! ( _sbuf ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _IO_marker > ( ) ) ) . _pos as * const _ as usize } , 16usize , concat ! ( "Offset of field: " , stringify ! ( _IO_marker ) , "::" , stringify ! ( _pos ) ) ) ; } pub const __codecvt_result___codecvt_ok : __codecvt_result = 0 ; pub const __codecvt_result___codecvt_partial : __codecvt_result = 1 ; pub const __codecvt_result___codecvt_error : __codecvt_result = 2 ; pub const __codecvt_result___codecvt_noconv : __codecvt_result = 3 ; pub type __codecvt_result = u32 ; # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct _IO_FILE { pub _flags : :: std :: os :: raw :: c_int , pub _IO_read_ptr : * mut :: std :: os :: raw :: c_char , pub _IO_read_end : * mut :: std :: os :: raw :: c_char , pub _IO_read_base : * mut :: std :: os :: raw :: c_char , pub _IO_write_base : * mut :: std :: os :: raw :: c_char , pub _IO_write_ptr : * mut :: std :: os :: raw :: c_char , pub _IO_write_end : * mut :: std :: os :: raw :: c_char , pub _IO_buf_base : * mut :: std :: os :: raw :: c_char , pub _IO_buf_end : * mut :: std :: os :: raw :: c_char , pub _IO_save_base : * mut :: std :: os :: raw :: c_char , pub _IO_backup_base : * mut :: std :: os :: raw :: c_char , pub _IO_save_end : * mut :: std :: os :: raw :: c_char , pub _markers : * mut _IO_marker , pub _chain : * mut _IO_FILE , pub _fileno : :: std :: os :: raw :: c_int , pub _flags2 : :: std :: os :: raw :: c_int , pub _old_offset : __off_t , pub _cur_column : :: std :: os :: raw :: c_ushort , pub _vtable_offset : :: std :: os :: raw :: c_schar , pub _shortbuf : [ :: std :: os :: raw :: c_char ; 1usize ] , pub _lock : * mut _IO_lock_t , pub _offset : __off64_t , pub __pad1 : * mut :: std :: os :: raw :: c_void , pub __pad2 : * mut :: std :: os :: raw :: c_void , pub __pad3 : * mut :: std :: os :: raw :: c_void , pub __pad4 : * mut :: std :: os :: raw :: c_void , pub __pad5 : usize , pub _mode : :: std :: os :: raw :: c_int , pub _unused2 : [ :: std :: os :: raw :: c_char ; 20usize ] , } # [ test ] fn bindgen_test_layout__IO_FILE ( ) { assert_eq ! ( :: std :: mem :: size_of :: < _IO_FILE > ( ) , 216usize , concat ! ( "Size of: " , stringify ! ( _IO_FILE ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < _IO_FILE > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( _IO_FILE ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _IO_FILE > ( ) ) ) . _flags as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( _IO_FILE ) , "::" , stringify ! ( _flags ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _IO_FILE > ( ) ) ) . _IO_read_ptr as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( _IO_FILE ) , "::" , stringify ! ( _IO_read_ptr ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _IO_FILE > ( ) ) ) . _IO_read_end as * const _ as usize } , 16usize , concat ! ( "Offset of field: " , stringify ! ( _IO_FILE ) , "::" , stringify ! ( _IO_read_end ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _IO_FILE > ( ) ) ) . _IO_read_base as * const _ as usize } , 24usize , concat ! ( "Offset of field: " , stringify ! ( _IO_FILE ) , "::" , stringify ! ( _IO_read_base ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _IO_FILE > ( ) ) ) . _IO_write_base as * const _ as usize } , 32usize , concat ! ( "Offset of field: " , stringify ! ( _IO_FILE ) , "::" , stringify ! ( _IO_write_base ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _IO_FILE > ( ) ) ) . _IO_write_ptr as * const _ as usize } , 40usize , concat ! ( "Offset of field: " , stringify ! ( _IO_FILE ) , "::" , stringify ! ( _IO_write_ptr ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _IO_FILE > ( ) ) ) . _IO_write_end as * const _ as usize } , 48usize , concat ! ( "Offset of field: " , stringify ! ( _IO_FILE ) , "::" , stringify ! ( _IO_write_end ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _IO_FILE > ( ) ) ) . _IO_buf_base as * const _ as usize } , 56usize , concat ! ( "Offset of field: " , stringify ! ( _IO_FILE ) , "::" , stringify ! ( _IO_buf_base ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _IO_FILE > ( ) ) ) . _IO_buf_end as * const _ as usize } , 64usize , concat ! ( "Offset of field: " , stringify ! ( _IO_FILE ) , "::" , stringify ! ( _IO_buf_end ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _IO_FILE > ( ) ) ) . _IO_save_base as * const _ as usize } , 72usize , concat ! ( "Offset of field: " , stringify ! ( _IO_FILE ) , "::" , stringify ! ( _IO_save_base ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _IO_FILE > ( ) ) ) . _IO_backup_base as * const _ as usize } , 80usize , concat ! ( "Offset of field: " , stringify ! ( _IO_FILE ) , "::" , stringify ! ( _IO_backup_base ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _IO_FILE > ( ) ) ) . _IO_save_end as * const _ as usize } , 88usize , concat ! ( "Offset of field: " , stringify ! ( _IO_FILE ) , "::" , stringify ! ( _IO_save_end ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _IO_FILE > ( ) ) ) . _markers as * const _ as usize } , 96usize , concat ! ( "Offset of field: " , stringify ! ( _IO_FILE ) , "::" , stringify ! ( _markers ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _IO_FILE > ( ) ) ) . _chain as * const _ as usize } , 104usize , concat ! ( "Offset of field: " , stringify ! ( _IO_FILE ) , "::" , stringify ! ( _chain ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _IO_FILE > ( ) ) ) . _fileno as * const _ as usize } , 112usize , concat ! ( "Offset of field: " , stringify ! ( _IO_FILE ) , "::" , stringify ! ( _fileno ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _IO_FILE > ( ) ) ) . _flags2 as * const _ as usize } , 116usize , concat ! ( "Offset of field: " , stringify ! ( _IO_FILE ) , "::" , stringify ! ( _flags2 ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _IO_FILE > ( ) ) ) . _old_offset as * const _ as usize } , 120usize , concat ! ( "Offset of field: " , stringify ! ( _IO_FILE ) , "::" , stringify ! ( _old_offset ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _IO_FILE > ( ) ) ) . _cur_column as * const _ as usize } , 128usize , concat ! ( "Offset of field: " , stringify ! ( _IO_FILE ) , "::" , stringify ! ( _cur_column ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _IO_FILE > ( ) ) ) . _vtable_offset as * const _ as usize } , 130usize , concat ! ( "Offset of field: " , stringify ! ( _IO_FILE ) , "::" , stringify ! ( _vtable_offset ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _IO_FILE > ( ) ) ) . _shortbuf as * const _ as usize } , 131usize , concat ! ( "Offset of field: " , stringify ! ( _IO_FILE ) , "::" , stringify ! ( _shortbuf ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _IO_FILE > ( ) ) ) . _lock as * const _ as usize } , 136usize , concat ! ( "Offset of field: " , stringify ! ( _IO_FILE ) , "::" , stringify ! ( _lock ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _IO_FILE > ( ) ) ) . _offset as * const _ as usize } , 144usize , concat ! ( "Offset of field: " , stringify ! ( _IO_FILE ) , "::" , stringify ! ( _offset ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _IO_FILE > ( ) ) ) . __pad1 as * const _ as usize } , 152usize , concat ! ( "Offset of field: " , stringify ! ( _IO_FILE ) , "::" , stringify ! ( __pad1 ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _IO_FILE > ( ) ) ) . __pad2 as * const _ as usize } , 160usize , concat ! ( "Offset of field: " , stringify ! ( _IO_FILE ) , "::" , stringify ! ( __pad2 ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _IO_FILE > ( ) ) ) . __pad3 as * const _ as usize } , 168usize , concat ! ( "Offset of field: " , stringify ! ( _IO_FILE ) , "::" , stringify ! ( __pad3 ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _IO_FILE > ( ) ) ) . __pad4 as * const _ as usize } , 176usize , concat ! ( "Offset of field: " , stringify ! ( _IO_FILE ) , "::" , stringify ! ( __pad4 ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _IO_FILE > ( ) ) ) . __pad5 as * const _ as usize } , 184usize , concat ! ( "Offset of field: " , stringify ! ( _IO_FILE ) , "::" , stringify ! ( __pad5 ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _IO_FILE > ( ) ) ) . _mode as * const _ as usize } , 192usize , concat ! ( "Offset of field: " , stringify ! ( _IO_FILE ) , "::" , stringify ! ( _mode ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _IO_FILE > ( ) ) ) . _unused2 as * const _ as usize } , 196usize , concat ! ( "Offset of field: " , stringify ! ( _IO_FILE ) , "::" , stringify ! ( _unused2 ) ) ) ; } # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct _IO_FILE_plus { _unused : [ u8 ; 0 ] , } extern "C" { # [ link_name = "\u{1}_IO_2_1_stdin_" ] pub static mut _IO_2_1_stdin_ : _IO_FILE_plus ; } extern "C" { # [ link_name = "\u{1}_IO_2_1_stdout_" ] pub static mut _IO_2_1_stdout_ : _IO_FILE_plus ; } extern "C" { # [ link_name = "\u{1}_IO_2_1_stderr_" ] pub static mut _IO_2_1_stderr_ : _IO_FILE_plus ; } pub type __io_read_fn = :: std :: option :: Option < unsafe extern "C" fn ( __cookie : * mut :: std :: os :: raw :: c_void , __buf : * mut :: std :: os :: raw :: c_char , __nbytes : usize ) -> __ssize_t > ; pub type __io_write_fn = :: std :: option :: Option < unsafe extern "C" fn ( __cookie : * mut :: std :: os :: raw :: c_void , __buf : * const :: std :: os :: raw :: c_char , __n : usize ) -> __ssize_t > ; pub type __io_seek_fn = :: std :: option :: Option < unsafe extern "C" fn ( __cookie : * mut :: std :: os :: raw :: c_void , __pos : * mut __off64_t , __w : :: std :: os :: raw :: c_int ) -> :: std :: os :: raw :: c_int > ; pub type __io_close_fn = :: std :: option :: Option < unsafe extern "C" fn ( __cookie : * mut :: std :: os :: raw :: c_void ) -> :: std :: os :: raw :: c_int > ; extern "C" { pub fn __underflow ( arg1 : * mut _IO_FILE ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn __uflow ( arg1 : * mut _IO_FILE ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn __overflow ( arg1 : * mut _IO_FILE , arg2 : :: std :: os :: raw :: c_int ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn _IO_getc ( __fp : * mut _IO_FILE ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn _IO_putc ( __c : :: std :: os :: raw :: c_int , __fp : * mut _IO_FILE ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn _IO_feof ( __fp : * mut _IO_FILE ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn _IO_ferror ( __fp : * mut _IO_FILE ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn _IO_peekc_locked ( __fp : * mut _IO_FILE ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn _IO_flockfile ( arg1 : * mut _IO_FILE ) ; } extern "C" { pub fn _IO_funlockfile ( arg1 : * mut _IO_FILE ) ; } extern "C" { pub fn _IO_ftrylockfile ( arg1 : * mut _IO_FILE ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn _IO_vfscanf ( arg1 : * mut _IO_FILE , arg2 : * const :: std :: os :: raw :: c_char , arg3 : * mut __va_list_tag , arg4 : * mut :: std :: os :: raw :: c_int ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn _IO_vfprintf ( arg1 : * mut _IO_FILE , arg2 : * const :: std :: os :: raw :: c_char , arg3 : * mut __va_list_tag ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn _IO_padn ( arg1 : * mut _IO_FILE , arg2 : :: std :: os :: raw :: c_int , arg3 : __ssize_t ) -> __ssize_t ; } extern "C" { pub fn _IO_sgetn ( arg1 : * mut _IO_FILE , arg2 : * mut :: std :: os :: raw :: c_void , arg3 : usize ) -> usize ; } extern "C" { pub fn _IO_seekoff ( arg1 : * mut _IO_FILE , arg2 : __off64_t , arg3 : :: std :: os :: raw :: c_int , arg4 : :: std :: os :: raw :: c_int ) -> __off64_t ; } extern "C" { pub fn _IO_seekpos ( arg1 : * mut _IO_FILE , arg2 : __off64_t , arg3 : :: std :: os :: raw :: c_int ) -> __off64_t ; } extern "C" { pub fn _IO_free_backup_area ( arg1 : * mut _IO_FILE ) ; } pub type off_t = __off_t ; pub type fpos_t = _G_fpos_t ; extern "C" { # [ link_name = "\u{1}stdin" ] pub static mut stdin : * mut _IO_FILE ; } extern "C" { # [ link_name = "\u{1}stdout" ] pub static mut stdout : * mut _IO_FILE ; } extern "C" { # [ link_name = "\u{1}stderr" ] pub static mut stderr : * mut _IO_FILE ; } extern "C" { pub fn remove ( __filename : * const :: std :: os :: raw :: c_char ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn rename ( __old : * const :: std :: os :: raw :: c_char , __new : * const :: std :: os :: raw :: c_char ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn renameat ( __oldfd : :: std :: os :: raw :: c_int , __old : * const :: std :: os :: raw :: c_char , __newfd : :: std :: os :: raw :: c_int , __new : * const :: std :: os :: raw :: c_char ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn tmpfile ( ) -> * mut FILE ; } extern "C" { pub fn tmpnam ( __s : * mut :: std :: os :: raw :: c_char ) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn tmpnam_r ( __s : * mut :: std :: os :: raw :: c_char ) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn tempnam ( __dir : * const :: std :: os :: raw :: c_char , __pfx : * const :: std :: os :: raw :: c_char ) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn fclose ( __stream : * mut FILE ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fflush ( __stream : * mut FILE ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fflush_unlocked ( __stream : * mut FILE ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fopen ( __filename : * const :: std :: os :: raw :: c_char , __modes : * const :: std :: os :: raw :: c_char ) -> * mut FILE ; } extern "C" { pub fn freopen ( __filename : * const :: std :: os :: raw :: c_char , __modes : * const :: std :: os :: raw :: c_char , __stream : * mut FILE ) -> * mut FILE ; } extern "C" { pub fn fdopen ( __fd : :: std :: os :: raw :: c_int , __modes : * const :: std :: os :: raw :: c_char ) -> * mut FILE ; } extern "C" { pub fn fmemopen ( __s : * mut :: std :: os :: raw :: c_void , __len : usize , __modes : * const :: std :: os :: raw :: c_char ) -> * mut FILE ; } extern "C" { pub fn open_memstream ( __bufloc : * mut * mut :: std :: os :: raw :: c_char , __sizeloc : * mut usize ) -> * mut FILE ; } extern "C" { pub fn setbuf ( __stream : * mut FILE , __buf : * mut :: std :: os :: raw :: c_char ) ; } extern "C" { pub fn setvbuf ( __stream : * mut FILE , __buf : * mut :: std :: os :: raw :: c_char , __modes : :: std :: os :: raw :: c_int , __n : usize ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn setbuffer ( __stream : * mut FILE , __buf : * mut :: std :: os :: raw :: c_char , __size : usize ) ; } extern "C" { pub fn setlinebuf ( __stream : * mut FILE ) ; } extern "C" { pub fn fprintf ( __stream : * mut FILE , __format : * const :: std :: os :: raw :: c_char , ... ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn printf ( __format : * const :: std :: os :: raw :: c_char , ... ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sprintf ( __s : * mut :: std :: os :: raw :: c_char , __format : * const :: std :: os :: raw :: c_char , ... ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn vfprintf ( __s : * mut FILE , __format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn vprintf ( __format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn vsprintf ( __s : * mut :: std :: os :: raw :: c_char , __format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn snprintf ( __s : * mut :: std :: os :: raw :: c_char , __maxlen : usize , __format : * const :: std :: os :: raw :: c_char , ... ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn vsnprintf ( __s : * mut :: std :: os :: raw :: c_char , __maxlen : usize , __format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn vdprintf ( __fd : :: std :: os :: raw :: c_int , __fmt : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn dprintf ( __fd : :: std :: os :: raw :: c_int , __fmt : * const :: std :: os :: raw :: c_char , ... ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fscanf ( __stream : * mut FILE , __format : * const :: std :: os :: raw :: c_char , ... ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn scanf ( __format : * const :: std :: os :: raw :: c_char , ... ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sscanf ( __s : * const :: std :: os :: raw :: c_char , __format : * const :: std :: os :: raw :: c_char , ... ) -> :: std :: os :: raw :: c_int ; } extern "C" { # [ link_name = "\u{1}__isoc99_fscanf" ] pub fn fscanf1 ( __stream : * mut FILE , __format : * const :: std :: os :: raw :: c_char , ... ) -> :: std :: os :: raw :: c_int ; } extern "C" { # [ link_name = "\u{1}__isoc99_scanf" ] pub fn scanf1 ( __format : * const :: std :: os :: raw :: c_char , ... ) -> :: std :: os :: raw :: c_int ; } extern "C" { # [ link_name = "\u{1}__isoc99_sscanf" ] pub fn sscanf1 ( __s : * const :: std :: os :: raw :: c_char , __format : * const :: std :: os :: raw :: c_char , ... ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn vfscanf ( __s : * mut FILE , __format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn vscanf ( __format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn vsscanf ( __s : * const :: std :: os :: raw :: c_char , __format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag ) -> :: std :: os :: raw :: c_int ; } extern "C" { # [ link_name = "\u{1}__isoc99_vfscanf" ] pub fn vfscanf1 ( __s : * mut FILE , __format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag ) -> :: std :: os :: raw :: c_int ; } extern "C" { # [ link_name = "\u{1}__isoc99_vscanf" ] pub fn vscanf1 ( __format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag ) -> :: std :: os :: raw :: c_int ; } extern "C" { # [ link_name = "\u{1}__isoc99_vsscanf" ] pub fn vsscanf1 ( __s : * const :: std :: os :: raw :: c_char , __format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fgetc ( __stream : * mut FILE ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn getc ( __stream : * mut FILE ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn getchar ( ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn getc_unlocked ( __stream : * mut FILE ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn getchar_unlocked ( ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fgetc_unlocked ( __stream : * mut FILE ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fputc ( __c : :: std :: os :: raw :: c_int , __stream : * mut FILE ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn putc ( __c : :: std :: os :: raw :: c_int , __stream : * mut FILE ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn putchar ( __c : :: std :: os :: raw :: c_int ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fputc_unlocked ( __c : :: std :: os :: raw :: c_int , __stream : * mut FILE ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn putc_unlocked ( __c : :: std :: os :: raw :: c_int , __stream : * mut FILE ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn putchar_unlocked ( __c : :: std :: os :: raw :: c_int ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn getw ( __stream : * mut FILE ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn putw ( __w : :: std :: os :: raw :: c_int , __stream : * mut FILE ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fgets ( __s : * mut :: std :: os :: raw :: c_char , __n : :: std :: os :: raw :: c_int , __stream : * mut FILE ) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn __getdelim ( __lineptr : * mut * mut :: std :: os :: raw :: c_char , __n : * mut usize , __delimiter : :: std :: os :: raw :: c_int , __stream : * mut FILE ) -> __ssize_t ; } extern "C" { pub fn getdelim ( __lineptr : * mut * mut :: std :: os :: raw :: c_char , __n : * mut usize , __delimiter : :: std :: os :: raw :: c_int , __stream : * mut FILE ) -> __ssize_t ; } extern "C" { pub fn getline ( __lineptr : * mut * mut :: std :: os :: raw :: c_char , __n : * mut usize , __stream : * mut FILE ) -> __ssize_t ; } extern "C" { pub fn fputs ( __s : * const :: std :: os :: raw :: c_char , __stream : * mut FILE ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn puts ( __s : * const :: std :: os :: raw :: c_char ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn ungetc ( __c : :: std :: os :: raw :: c_int , __stream : * mut FILE ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fread ( __ptr : * mut :: std :: os :: raw :: c_void , __size : usize , __n : usize , __stream : * mut FILE ) -> usize ; } extern "C" { pub fn fwrite ( __ptr : * const :: std :: os :: raw :: c_void , __size : usize , __n : usize , __s : * mut FILE ) -> usize ; } extern "C" { pub fn fread_unlocked ( __ptr : * mut :: std :: os :: raw :: c_void , __size : usize , __n : usize , __stream : * mut FILE ) -> usize ; } extern "C" { pub fn fwrite_unlocked ( __ptr : * const :: std :: os :: raw :: c_void , __size : usize , __n : usize , __stream : * mut FILE ) -> usize ; } extern "C" { pub fn fseek ( __stream : * mut FILE , __off : :: std :: os :: raw :: c_long , __whence : :: std :: os :: raw :: c_int ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn ftell ( __stream : * mut FILE ) -> :: std :: os :: raw :: c_long ; } extern "C" { pub fn rewind ( __stream : * mut FILE ) ; } extern "C" { pub fn fseeko ( __stream : * mut FILE , __off : __off_t , __whence : :: std :: os :: raw :: c_int ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn ftello ( __stream : * mut FILE ) -> __off_t ; } extern "C" { pub fn fgetpos ( __stream : * mut FILE , __pos : * mut fpos_t ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fsetpos ( __stream : * mut FILE , __pos : * const fpos_t ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn clearerr ( __stream : * mut FILE ) ; } extern "C" { pub fn feof ( __stream : * mut FILE ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn ferror ( __stream : * mut FILE ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn clearerr_unlocked ( __stream : * mut FILE ) ; } extern "C" { pub fn feof_unlocked ( __stream : * mut FILE ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn ferror_unlocked ( __stream : * mut FILE ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn perror ( __s : * const :: std :: os :: raw :: c_char ) ; } extern "C" { # [ link_name = "\u{1}sys_nerr" ] pub static mut sys_nerr : :: std :: os :: raw :: c_int ; } extern "C" { # [ link_name = "\u{1}sys_errlist" ] pub static mut sys_errlist : [ * const :: std :: os :: raw :: c_char ; 0usize ] ; } extern "C" { pub fn fileno ( __stream : * mut FILE ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fileno_unlocked ( __stream : * mut FILE ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn popen ( __command : * const :: std :: os :: raw :: c_char , __modes : * const :: std :: os :: raw :: c_char ) -> * mut FILE ; } extern "C" { pub fn pclose ( __stream : * mut FILE ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn ctermid ( __s : * mut :: std :: os :: raw :: c_char ) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn flockfile ( __stream : * mut FILE ) ; } extern "C" { pub fn ftrylockfile ( __stream : * mut FILE ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn funlockfile ( __stream : * mut FILE ) ; } pub type int_least8_t = :: std :: os :: raw :: c_schar ; pub type int_least16_t = :: std :: os :: raw :: c_short ; pub type int_least32_t = :: std :: os :: raw :: c_int ; pub type int_least64_t = :: std :: os :: raw :: c_long ; pub type uint_least8_t = :: std :: os :: raw :: c_uchar ; pub type uint_least16_t = :: std :: os :: raw :: c_ushort ; pub type uint_least32_t = :: std :: os :: raw :: c_uint ; pub type uint_least64_t = :: std :: os :: raw :: c_ulong ; pub type int_fast8_t = :: std :: os :: raw :: c_schar ; pub type int_fast16_t = :: std :: os :: raw :: c_long ; pub type int_fast32_t = :: std :: os :: raw :: c_long ; pub type int_fast64_t = :: std :: os :: raw :: c_long ; pub type uint_fast8_t = :: std :: os :: raw :: c_uchar ; pub type uint_fast16_t = :: std :: os :: raw :: c_ulong ; pub type uint_fast32_t = :: std :: os :: raw :: c_ulong ; pub type uint_fast64_t = :: std :: os :: raw :: c_ulong ; pub type intmax_t = __intmax_t ; pub type uintmax_t = __uintmax_t ; pub type clock_t = __clock_t ; pub type time_t = __time_t ; # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct tm { pub tm_sec : :: std :: os :: raw :: c_int , pub tm_min : :: std :: os :: raw :: c_int , pub tm_hour : :: std :: os :: raw :: c_int , pub tm_mday : :: std :: os :: raw :: c_int , pub tm_mon : :: std :: os :: raw :: c_int , pub tm_year : :: std :: os :: raw :: c_int , pub tm_wday : :: std :: os :: raw :: c_int , pub tm_yday : :: std :: os :: raw :: c_int , pub tm_isdst : :: std :: os :: raw :: c_int , pub tm_gmtoff : :: std :: os :: raw :: c_long , pub tm_zone : * const :: std :: os :: raw :: c_char , } # [ test ] fn bindgen_test_layout_tm ( ) { assert_eq ! ( :: std :: mem :: size_of :: < tm > ( ) , 56usize , concat ! ( "Size of: " , stringify ! ( tm ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < tm > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( tm ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < tm > ( ) ) ) . tm_sec as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( tm ) , "::" , stringify ! ( tm_sec ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < tm > ( ) ) ) . tm_min as * const _ as usize } , 4usize , concat ! ( "Offset of field: " , stringify ! ( tm ) , "::" , stringify ! ( tm_min ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < tm > ( ) ) ) . tm_hour as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( tm ) , "::" , stringify ! ( tm_hour ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < tm > ( ) ) ) . tm_mday as * const _ as usize } , 12usize , concat ! ( "Offset of field: " , stringify ! ( tm ) , "::" , stringify ! ( tm_mday ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < tm > ( ) ) ) . tm_mon as * const _ as usize } , 16usize , concat ! ( "Offset of field: " , stringify ! ( tm ) , "::" , stringify ! ( tm_mon ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < tm > ( ) ) ) . tm_year as * const _ as usize } , 20usize , concat ! ( "Offset of field: " , stringify ! ( tm ) , "::" , stringify ! ( tm_year ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < tm > ( ) ) ) . tm_wday as * const _ as usize } , 24usize , concat ! ( "Offset of field: " , stringify ! ( tm ) , "::" , stringify ! ( tm_wday ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < tm > ( ) ) ) . tm_yday as * const _ as usize } , 28usize , concat ! ( "Offset of field: " , stringify ! ( tm ) , "::" , stringify ! ( tm_yday ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < tm > ( ) ) ) . tm_isdst as * const _ as usize } , 32usize , concat ! ( "Offset of field: " , stringify ! ( tm ) , "::" , stringify ! ( tm_isdst ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < tm > ( ) ) ) . tm_gmtoff as * const _ as usize } , 40usize , concat ! ( "Offset of field: " , stringify ! ( tm ) , "::" , stringify ! ( tm_gmtoff ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < tm > ( ) ) ) . tm_zone as * const _ as usize } , 48usize , concat ! ( "Offset of field: " , stringify ! ( tm ) , "::" , stringify ! ( tm_zone ) ) ) ; } # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct timespec { pub tv_sec : __time_t , pub tv_nsec : __syscall_slong_t , } # [ test ] fn bindgen_test_layout_timespec ( ) { assert_eq ! ( :: std :: mem :: size_of :: < timespec > ( ) , 16usize , concat ! ( "Size of: " , stringify ! ( timespec ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < timespec > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( timespec ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < timespec > ( ) ) ) . tv_sec as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( timespec ) , "::" , stringify ! ( tv_sec ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < timespec > ( ) ) ) . tv_nsec as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( timespec ) , "::" , stringify ! ( tv_nsec ) ) ) ; } pub type clockid_t = __clockid_t ; pub type timer_t = __timer_t ; # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct itimerspec { pub it_interval : timespec , pub it_value : timespec , } # [ test ] fn bindgen_test_layout_itimerspec ( ) { assert_eq ! ( :: std :: mem :: size_of :: < itimerspec > ( ) , 32usize , concat ! ( "Size of: " , stringify ! ( itimerspec ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < itimerspec > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( itimerspec ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < itimerspec > ( ) ) ) . it_interval as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( itimerspec ) , "::" , stringify ! ( it_interval ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < itimerspec > ( ) ) ) . it_value as * const _ as usize } , 16usize , concat ! ( "Offset of field: " , stringify ! ( itimerspec ) , "::" , stringify ! ( it_value ) ) ) ; } # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct sigevent { _unused : [ u8 ; 0 ] , } pub type pid_t = __pid_t ; # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct __locale_struct { pub __locales : [ * mut __locale_data ; 13usize ] , pub __ctype_b : * const :: std :: os :: raw :: c_ushort , pub __ctype_tolower : * const :: std :: os :: raw :: c_int , pub __ctype_toupper : * const :: std :: os :: raw :: c_int , pub __names : [ * const :: std :: os :: raw :: c_char ; 13usize ] , } # [ test ] fn bindgen_test_layout___locale_struct ( ) { assert_eq ! ( :: std :: mem :: size_of :: < __locale_struct > ( ) , 232usize , concat ! ( "Size of: " , stringify ! ( __locale_struct ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < __locale_struct > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( __locale_struct ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __locale_struct > ( ) ) ) . __locales as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( __locale_struct ) , "::" , stringify ! ( __locales ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __locale_struct > ( ) ) ) . __ctype_b as * const _ as usize } , 104usize , concat ! ( "Offset of field: " , stringify ! ( __locale_struct ) , "::" , stringify ! ( __ctype_b ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __locale_struct > ( ) ) ) . __ctype_tolower as * const _ as usize } , 112usize , concat ! ( "Offset of field: " , stringify ! ( __locale_struct ) , "::" , stringify ! ( __ctype_tolower ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __locale_struct > ( ) ) ) . __ctype_toupper as * const _ as usize } , 120usize , concat ! ( "Offset of field: " , stringify ! ( __locale_struct ) , "::" , stringify ! ( __ctype_toupper ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __locale_struct > ( ) ) ) . __names as * const _ as usize } , 128usize , concat ! ( "Offset of field: " , stringify ! ( __locale_struct ) , "::" , stringify ! ( __names ) ) ) ; } pub type __locale_t = * mut __locale_struct ; pub type locale_t = __locale_t ; extern "C" { pub fn clock ( ) -> clock_t ; } extern "C" { pub fn time ( __timer : * mut time_t ) -> time_t ; } extern "C" { pub fn difftime ( __time1 : time_t , __time0 : time_t ) -> f64 ; } extern "C" { pub fn mktime ( __tp : * mut tm ) -> time_t ; } extern "C" { pub fn strftime ( __s : * mut :: std :: os :: raw :: c_char , __maxsize : usize , __format : * const :: std :: os :: raw :: c_char , __tp : * const tm ) -> usize ; } extern "C" { pub fn strftime_l ( __s : * mut :: std :: os :: raw :: c_char , __maxsize : usize , __format : * const :: std :: os :: raw :: c_char , __tp : * const tm , __loc : locale_t ) -> usize ; } extern "C" { pub fn gmtime ( __timer : * const time_t ) -> * mut tm ; } extern "C" { pub fn localtime ( __timer : * const time_t ) -> * mut tm ; } extern "C" { pub fn gmtime_r ( __timer : * const time_t , __tp : * mut tm ) -> * mut tm ; } extern "C" { pub fn localtime_r ( __timer : * const time_t , __tp : * mut tm ) -> * mut tm ; } extern "C" { pub fn asctime ( __tp : * const tm ) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn ctime ( __timer : * const time_t ) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn asctime_r ( __tp : * const tm , __buf : * mut :: std :: os :: raw :: c_char ) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn ctime_r ( __timer : * const time_t , __buf : * mut :: std :: os :: raw :: c_char ) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { # [ link_name = "\u{1}__tzname" ] pub static mut __tzname : [ * mut :: std :: os :: raw :: c_char ; 2usize ] ; } extern "C" { # [ link_name = "\u{1}__daylight" ] pub static mut __daylight : :: std :: os :: raw :: c_int ; } extern "C" { # [ link_name = "\u{1}__timezone" ] pub static mut __timezone : :: std :: os :: raw :: c_long ; } extern "C" { # [ link_name = "\u{1}tzname" ] pub static mut tzname : [ * mut :: std :: os :: raw :: c_char ; 2usize ] ; } extern "C" { pub fn tzset ( ) ; } extern "C" { # [ link_name = "\u{1}daylight" ] pub static mut daylight : :: std :: os :: raw :: c_int ; } extern "C" { # [ link_name = "\u{1}timezone" ] pub static mut timezone : :: std :: os :: raw :: c_long ; } extern "C" { pub fn stime ( __when : * const time_t ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn timegm ( __tp : * mut tm ) -> time_t ; } extern "C" { pub fn timelocal ( __tp : * mut tm ) -> time_t ; } extern "C" { pub fn dysize ( __year : :: std :: os :: raw :: c_int ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn nanosleep ( __requested_time : * const timespec , __remaining : * mut timespec ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn clock_getres ( __clock_id : clockid_t , __res : * mut timespec ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn clock_gettime ( __clock_id : clockid_t , __tp : * mut timespec ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn clock_settime ( __clock_id : clockid_t , __tp : * const timespec ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn clock_nanosleep ( __clock_id : clockid_t , __flags : :: std :: os :: raw :: c_int , __req : * const timespec , __rem : * mut timespec ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn clock_getcpuclockid ( __pid : pid_t , __clock_id : * mut clockid_t ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn timer_create ( __clock_id : clockid_t , __evp : * mut sigevent , __timerid : * mut timer_t ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn timer_delete ( __timerid : timer_t ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn timer_settime ( __timerid : timer_t , __flags : :: std :: os :: raw :: c_int , __value : * const itimerspec , __ovalue : * mut itimerspec ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn timer_gettime ( __timerid : timer_t , __value : * mut itimerspec ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn timer_getoverrun ( __timerid : timer_t ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn timespec_get ( __ts : * mut timespec , __base : :: std :: os :: raw :: c_int ) -> :: std :: os :: raw :: c_int ; } pub type wchar_t = :: std :: os :: raw :: c_int ; pub const idtype_t_P_ALL : idtype_t = 0 ; pub const idtype_t_P_PID : idtype_t = 1 ; pub const idtype_t_P_PGID : idtype_t = 2 ; pub type idtype_t = u32 ; pub type _Float32 = f32 ; pub type _Float64 = f64 ; pub type _Float32x = f64 ; pub type _Float64x = f64 ; # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct div_t { pub quot : :: std :: os :: raw :: c_int , pub rem : :: std :: os :: raw :: c_int , } # [ test ] fn bindgen_test_layout_div_t ( ) { assert_eq ! ( :: std :: mem :: size_of :: < div_t > ( ) , 8usize , concat ! ( "Size of: " , stringify ! ( div_t ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < div_t > ( ) , 4usize , concat ! ( "Alignment of " , stringify ! ( div_t ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < div_t > ( ) ) ) . quot as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( div_t ) , "::" , stringify ! ( quot ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < div_t > ( ) ) ) . rem as * const _ as usize } , 4usize , concat ! ( "Offset of field: " , stringify ! ( div_t ) , "::" , stringify ! ( rem ) ) ) ; } # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct ldiv_t { pub quot : :: std :: os :: raw :: c_long , pub rem : :: std :: os :: raw :: c_long , } # [ test ] fn bindgen_test_layout_ldiv_t ( ) { assert_eq ! ( :: std :: mem :: size_of :: < ldiv_t > ( ) , 16usize , concat ! ( "Size of: " , stringify ! ( ldiv_t ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < ldiv_t > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( ldiv_t ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < ldiv_t > ( ) ) ) . quot as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( ldiv_t ) , "::" , stringify ! ( quot ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < ldiv_t > ( ) ) ) . rem as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( ldiv_t ) , "::" , stringify ! ( rem ) ) ) ; } # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct lldiv_t { pub quot : :: std :: os :: raw :: c_longlong , pub rem : :: std :: os :: raw :: c_longlong , } # [ test ] fn bindgen_test_layout_lldiv_t ( ) { assert_eq ! ( :: std :: mem :: size_of :: < lldiv_t > ( ) , 16usize , concat ! ( "Size of: " , stringify ! ( lldiv_t ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < lldiv_t > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( lldiv_t ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < lldiv_t > ( ) ) ) . quot as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( lldiv_t ) , "::" , stringify ! ( quot ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < lldiv_t > ( ) ) ) . rem as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( lldiv_t ) , "::" , stringify ! ( rem ) ) ) ; } extern "C" { pub fn __ctype_get_mb_cur_max ( ) -> usize ; } extern "C" { pub fn atof ( __nptr : * const :: std :: os :: raw :: c_char ) -> f64 ; } extern "C" { pub fn atoi ( __nptr : * const :: std :: os :: raw :: c_char ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn atol ( __nptr : * const :: std :: os :: raw :: c_char ) -> :: std :: os :: raw :: c_long ; } extern "C" { pub fn atoll ( __nptr : * const :: std :: os :: raw :: c_char ) -> :: std :: os :: raw :: c_longlong ; } extern "C" { pub fn strtod ( __nptr : * const :: std :: os :: raw :: c_char , __endptr : * mut * mut :: std :: os :: raw :: c_char ) -> f64 ; } extern "C" { pub fn strtof ( __nptr : * const :: std :: os :: raw :: c_char , __endptr : * mut * mut :: std :: os :: raw :: c_char ) -> f32 ; } extern "C" { pub fn strtold ( __nptr : * const :: std :: os :: raw :: c_char , __endptr : * mut * mut :: std :: os :: raw :: c_char ) -> f64 ; } extern "C" { pub fn strtol ( __nptr : * const :: std :: os :: raw :: c_char , __endptr : * mut * mut :: std :: os :: raw :: c_char , __base : :: std :: os :: raw :: c_int ) -> :: std :: os :: raw :: c_long ; } extern "C" { pub fn strtoul ( __nptr : * const :: std :: os :: raw :: c_char , __endptr : * mut * mut :: std :: os :: raw :: c_char , __base : :: std :: os :: raw :: c_int ) -> :: std :: os :: raw :: c_ulong ; } extern "C" { pub fn strtoq ( __nptr : * const :: std :: os :: raw :: c_char , __endptr : * mut * mut :: std :: os :: raw :: c_char , __base : :: std :: os :: raw :: c_int ) -> :: std :: os :: raw :: c_longlong ; } extern "C" { pub fn strtouq ( __nptr : * const :: std :: os :: raw :: c_char , __endptr : * mut * mut :: std :: os :: raw :: c_char , __base : :: std :: os :: raw :: c_int ) -> :: std :: os :: raw :: c_ulonglong ; } extern "C" { pub fn strtoll ( __nptr : * const :: std :: os :: raw :: c_char , __endptr : * mut * mut :: std :: os :: raw :: c_char , __base : :: std :: os :: raw :: c_int ) -> :: std :: os :: raw :: c_longlong ; } extern "C" { pub fn strtoull ( __nptr : * const :: std :: os :: raw :: c_char , __endptr : * mut * mut :: std :: os :: raw :: c_char , __base : :: std :: os :: raw :: c_int ) -> :: std :: os :: raw :: c_ulonglong ; } extern "C" { pub fn l64a ( __n : :: std :: os :: raw :: c_long ) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn a64l ( __s : * const :: std :: os :: raw :: c_char ) -> :: std :: os :: raw :: c_long ; } pub type u_char = __u_char ; pub type u_short = __u_short ; pub type u_int = __u_int ; pub type u_long = __u_long ; pub type quad_t = __quad_t ; pub type u_quad_t = __u_quad_t ; pub type fsid_t = __fsid_t ; pub type loff_t = __loff_t ; pub type ino_t = __ino_t ; pub type dev_t = __dev_t ; pub type gid_t = __gid_t ; pub type mode_t = __mode_t ; pub type nlink_t = __nlink_t ; pub type uid_t = __uid_t ; pub type id_t = __id_t ; pub type daddr_t = __daddr_t ; pub type caddr_t = __caddr_t ; pub type key_t = __key_t ; pub type ulong = :: std :: os :: raw :: c_ulong ; pub type ushort = :: std :: os :: raw :: c_ushort ; pub type uint = :: std :: os :: raw :: c_uint ; pub type u_int8_t = :: std :: os :: raw :: c_uchar ; pub type u_int16_t = :: std :: os :: raw :: c_ushort ; pub type u_int32_t = :: std :: os :: raw :: c_uint ; pub type u_int64_t = :: std :: os :: raw :: c_ulong ; pub type register_t = :: std :: os :: raw :: c_long ; # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct __sigset_t { pub __val : [ :: std :: os :: raw :: c_ulong ; 16usize ] , } # [ test ] fn bindgen_test_layout___sigset_t ( ) { assert_eq ! ( :: std :: mem :: size_of :: < __sigset_t > ( ) , 128usize , concat ! ( "Size of: " , stringify ! ( __sigset_t ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < __sigset_t > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( __sigset_t ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __sigset_t > ( ) ) ) . __val as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( __sigset_t ) , "::" , stringify ! ( __val ) ) ) ; } pub type sigset_t = __sigset_t ; # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct timeval { pub tv_sec : __time_t , pub tv_usec : __suseconds_t , } # [ test ] fn bindgen_test_layout_timeval ( ) { assert_eq ! ( :: std :: mem :: size_of :: < timeval > ( ) , 16usize , concat ! ( "Size of: " , stringify ! ( timeval ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < timeval > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( timeval ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < timeval > ( ) ) ) . tv_sec as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( timeval ) , "::" , stringify ! ( tv_sec ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < timeval > ( ) ) ) . tv_usec as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( timeval ) , "::" , stringify ! ( tv_usec ) ) ) ; } pub type suseconds_t = __suseconds_t ; pub type __fd_mask = :: std :: os :: raw :: c_long ; # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct fd_set { pub __fds_bits : [ __fd_mask ; 16usize ] , } # [ test ] fn bindgen_test_layout_fd_set ( ) { assert_eq ! ( :: std :: mem :: size_of :: < fd_set > ( ) , 128usize , concat ! ( "Size of: " , stringify ! ( fd_set ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < fd_set > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( fd_set ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < fd_set > ( ) ) ) . __fds_bits as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( fd_set ) , "::" , stringify ! ( __fds_bits ) ) ) ; } pub type fd_mask = __fd_mask ; extern "C" { pub fn select ( __nfds : :: std :: os :: raw :: c_int , __readfds : * mut fd_set , __writefds : * mut fd_set , __exceptfds : * mut fd_set , __timeout : * mut timeval ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn pselect ( __nfds : :: std :: os :: raw :: c_int , __readfds : * mut fd_set , __writefds : * mut fd_set , __exceptfds : * mut fd_set , __timeout : * const timespec , __sigmask : * const __sigset_t ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn gnu_dev_major ( __dev : __dev_t ) -> :: std :: os :: raw :: c_uint ; } extern "C" { pub fn gnu_dev_minor ( __dev : __dev_t ) -> :: std :: os :: raw :: c_uint ; } extern "C" { pub fn gnu_dev_makedev ( __major : :: std :: os :: raw :: c_uint , __minor : :: std :: os :: raw :: c_uint ) -> __dev_t ; } pub type blksize_t = __blksize_t ; pub type blkcnt_t = __blkcnt_t ; pub type fsblkcnt_t = __fsblkcnt_t ; pub type fsfilcnt_t = __fsfilcnt_t ; # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct __pthread_rwlock_arch_t { pub __readers : :: std :: os :: raw :: c_uint , pub __writers : :: std :: os :: raw :: c_uint , pub __wrphase_futex : :: std :: os :: raw :: c_uint , pub __writers_futex : :: std :: os :: raw :: c_uint , pub __pad3 : :: std :: os :: raw :: c_uint , pub __pad4 : :: std :: os :: raw :: c_uint , pub __cur_writer : :: std :: os :: raw :: c_int , pub __shared : :: std :: os :: raw :: c_int , pub __rwelision : :: std :: os :: raw :: c_schar , pub __pad1 : [ :: std :: os :: raw :: c_uchar ; 7usize ] , pub __pad2 : :: std :: os :: raw :: c_ulong , pub __flags : :: std :: os :: raw :: c_uint , } # [ test ] fn bindgen_test_layout___pthread_rwlock_arch_t ( ) { assert_eq ! ( :: std :: mem :: size_of :: < __pthread_rwlock_arch_t > ( ) , 56usize , concat ! ( "Size of: " , stringify ! ( __pthread_rwlock_arch_t ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < __pthread_rwlock_arch_t > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( __pthread_rwlock_arch_t ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __pthread_rwlock_arch_t > ( ) ) ) . __readers as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( __pthread_rwlock_arch_t ) , "::" , stringify ! ( __readers ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __pthread_rwlock_arch_t > ( ) ) ) . __writers as * const _ as usize } , 4usize , concat ! ( "Offset of field: " , stringify ! ( __pthread_rwlock_arch_t ) , "::" , stringify ! ( __writers ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __pthread_rwlock_arch_t > ( ) ) ) . __wrphase_futex as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( __pthread_rwlock_arch_t ) , "::" , stringify ! ( __wrphase_futex ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __pthread_rwlock_arch_t > ( ) ) ) . __writers_futex as * const _ as usize } , 12usize , concat ! ( "Offset of field: " , stringify ! ( __pthread_rwlock_arch_t ) , "::" , stringify ! ( __writers_futex ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __pthread_rwlock_arch_t > ( ) ) ) . __pad3 as * const _ as usize } , 16usize , concat ! ( "Offset of field: " , stringify ! ( __pthread_rwlock_arch_t ) , "::" , stringify ! ( __pad3 ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __pthread_rwlock_arch_t > ( ) ) ) . __pad4 as * const _ as usize } , 20usize , concat ! ( "Offset of field: " , stringify ! ( __pthread_rwlock_arch_t ) , "::" , stringify ! ( __pad4 ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __pthread_rwlock_arch_t > ( ) ) ) . __cur_writer as * const _ as usize } , 24usize , concat ! ( "Offset of field: " , stringify ! ( __pthread_rwlock_arch_t ) , "::" , stringify ! ( __cur_writer ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __pthread_rwlock_arch_t > ( ) ) ) . __shared as * const _ as usize } , 28usize , concat ! ( "Offset of field: " , stringify ! ( __pthread_rwlock_arch_t ) , "::" , stringify ! ( __shared ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __pthread_rwlock_arch_t > ( ) ) ) . __rwelision as * const _ as usize } , 32usize , concat ! ( "Offset of field: " , stringify ! ( __pthread_rwlock_arch_t ) , "::" , stringify ! ( __rwelision ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __pthread_rwlock_arch_t > ( ) ) ) . __pad1 as * const _ as usize } , 33usize , concat ! ( "Offset of field: " , stringify ! ( __pthread_rwlock_arch_t ) , "::" , stringify ! ( __pad1 ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __pthread_rwlock_arch_t > ( ) ) ) . __pad2 as * const _ as usize } , 40usize , concat ! ( "Offset of field: " , stringify ! ( __pthread_rwlock_arch_t ) , "::" , stringify ! ( __pad2 ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __pthread_rwlock_arch_t > ( ) ) ) . __flags as * const _ as usize } , 48usize , concat ! ( "Offset of field: " , stringify ! ( __pthread_rwlock_arch_t ) , "::" , stringify ! ( __flags ) ) ) ; } # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct __pthread_internal_list { pub __prev : * mut __pthread_internal_list , pub __next : * mut __pthread_internal_list , } # [ test ] fn bindgen_test_layout___pthread_internal_list ( ) { assert_eq ! ( :: std :: mem :: size_of :: < __pthread_internal_list > ( ) , 16usize , concat ! ( "Size of: " , stringify ! ( __pthread_internal_list ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < __pthread_internal_list > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( __pthread_internal_list ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __pthread_internal_list > ( ) ) ) . __prev as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( __pthread_internal_list ) , "::" , stringify ! ( __prev ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __pthread_internal_list > ( ) ) ) . __next as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( __pthread_internal_list ) , "::" , stringify ! ( __next ) ) ) ; } pub type __pthread_list_t = __pthread_internal_list ; # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct __pthread_mutex_s { pub __lock : :: std :: os :: raw :: c_int , pub __count : :: std :: os :: raw :: c_uint , pub __owner : :: std :: os :: raw :: c_int , pub __nusers : :: std :: os :: raw :: c_uint , pub __kind : :: std :: os :: raw :: c_int , pub __spins : :: std :: os :: raw :: c_short , pub __elision : :: std :: os :: raw :: c_short , pub __list : __pthread_list_t , } # [ test ] fn bindgen_test_layout___pthread_mutex_s ( ) { assert_eq ! ( :: std :: mem :: size_of :: < __pthread_mutex_s > ( ) , 40usize , concat ! ( "Size of: " , stringify ! ( __pthread_mutex_s ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < __pthread_mutex_s > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( __pthread_mutex_s ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __pthread_mutex_s > ( ) ) ) . __lock as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( __pthread_mutex_s ) , "::" , stringify ! ( __lock ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __pthread_mutex_s > ( ) ) ) . __count as * const _ as usize } , 4usize , concat ! ( "Offset of field: " , stringify ! ( __pthread_mutex_s ) , "::" , stringify ! ( __count ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __pthread_mutex_s > ( ) ) ) . __owner as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( __pthread_mutex_s ) , "::" , stringify ! ( __owner ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __pthread_mutex_s > ( ) ) ) . __nusers as * const _ as usize } , 12usize , concat ! ( "Offset of field: " , stringify ! ( __pthread_mutex_s ) , "::" , stringify ! ( __nusers ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __pthread_mutex_s > ( ) ) ) . __kind as * const _ as usize } , 16usize , concat ! ( "Offset of field: " , stringify ! ( __pthread_mutex_s ) , "::" , stringify ! ( __kind ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __pthread_mutex_s > ( ) ) ) . __spins as * const _ as usize } , 20usize , concat ! ( "Offset of field: " , stringify ! ( __pthread_mutex_s ) , "::" , stringify ! ( __spins ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __pthread_mutex_s > ( ) ) ) . __elision as * const _ as usize } , 22usize , concat ! ( "Offset of field: " , stringify ! ( __pthread_mutex_s ) , "::" , stringify ! ( __elision ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __pthread_mutex_s > ( ) ) ) . __list as * const _ as usize } , 24usize , concat ! ( "Offset of field: " , stringify ! ( __pthread_mutex_s ) , "::" , stringify ! ( __list ) ) ) ; } # [ repr ( C ) ] # [ derive ( Copy , Clone ) ] pub struct __pthread_cond_s { pub __bindgen_anon_1 : __pthread_cond_s__bindgen_ty_1 , pub __bindgen_anon_2 : __pthread_cond_s__bindgen_ty_2 , pub __g_refs : [ :: std :: os :: raw :: c_uint ; 2usize ] , pub __g_size : [ :: std :: os :: raw :: c_uint ; 2usize ] , pub __g1_orig_size : :: std :: os :: raw :: c_uint , pub __wrefs : :: std :: os :: raw :: c_uint , pub __g_signals : [ :: std :: os :: raw :: c_uint ; 2usize ] , } # [ repr ( C ) ] # [ derive ( Copy , Clone ) ] pub union __pthread_cond_s__bindgen_ty_1 { pub __wseq : :: std :: os :: raw :: c_ulonglong , pub __wseq32 : __pthread_cond_s__bindgen_ty_1__bindgen_ty_1 , _bindgen_union_align : u64 , } # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct __pthread_cond_s__bindgen_ty_1__bindgen_ty_1 { pub __low : :: std :: os :: raw :: c_uint , pub __high : :: std :: os :: raw :: c_uint , } # [ test ] fn bindgen_test_layout___pthread_cond_s__bindgen_ty_1__bindgen_ty_1 ( ) { assert_eq ! ( :: std :: mem :: size_of :: < __pthread_cond_s__bindgen_ty_1__bindgen_ty_1 > ( ) , 8usize , concat ! ( "Size of: " , stringify ! ( __pthread_cond_s__bindgen_ty_1__bindgen_ty_1 ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < __pthread_cond_s__bindgen_ty_1__bindgen_ty_1 > ( ) , 4usize , concat ! ( "Alignment of " , stringify ! ( __pthread_cond_s__bindgen_ty_1__bindgen_ty_1 ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __pthread_cond_s__bindgen_ty_1__bindgen_ty_1 > ( ) ) ) . __low as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( __pthread_cond_s__bindgen_ty_1__bindgen_ty_1 ) , "::" , stringify ! ( __low ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __pthread_cond_s__bindgen_ty_1__bindgen_ty_1 > ( ) ) ) . __high as * const _ as usize } , 4usize , concat ! ( "Offset of field: " , stringify ! ( __pthread_cond_s__bindgen_ty_1__bindgen_ty_1 ) , "::" , stringify ! ( __high ) ) ) ; } # [ test ] fn bindgen_test_layout___pthread_cond_s__bindgen_ty_1 ( ) { assert_eq ! ( :: std :: mem :: size_of :: < __pthread_cond_s__bindgen_ty_1 > ( ) , 8usize , concat ! ( "Size of: " , stringify ! ( __pthread_cond_s__bindgen_ty_1 ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < __pthread_cond_s__bindgen_ty_1 > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( __pthread_cond_s__bindgen_ty_1 ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __pthread_cond_s__bindgen_ty_1 > ( ) ) ) . __wseq as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( __pthread_cond_s__bindgen_ty_1 ) , "::" , stringify ! ( __wseq ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __pthread_cond_s__bindgen_ty_1 > ( ) ) ) . __wseq32 as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( __pthread_cond_s__bindgen_ty_1 ) , "::" , stringify ! ( __wseq32 ) ) ) ; } # [ repr ( C ) ] # [ derive ( Copy , Clone ) ] pub union __pthread_cond_s__bindgen_ty_2 { pub __g1_start : :: std :: os :: raw :: c_ulonglong , pub __g1_start32 : __pthread_cond_s__bindgen_ty_2__bindgen_ty_1 , _bindgen_union_align : u64 , } # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct __pthread_cond_s__bindgen_ty_2__bindgen_ty_1 { pub __low : :: std :: os :: raw :: c_uint , pub __high : :: std :: os :: raw :: c_uint , } # [ test ] fn bindgen_test_layout___pthread_cond_s__bindgen_ty_2__bindgen_ty_1 ( ) { assert_eq ! ( :: std :: mem :: size_of :: < __pthread_cond_s__bindgen_ty_2__bindgen_ty_1 > ( ) , 8usize , concat ! ( "Size of: " , stringify ! ( __pthread_cond_s__bindgen_ty_2__bindgen_ty_1 ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < __pthread_cond_s__bindgen_ty_2__bindgen_ty_1 > ( ) , 4usize , concat ! ( "Alignment of " , stringify ! ( __pthread_cond_s__bindgen_ty_2__bindgen_ty_1 ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __pthread_cond_s__bindgen_ty_2__bindgen_ty_1 > ( ) ) ) . __low as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( __pthread_cond_s__bindgen_ty_2__bindgen_ty_1 ) , "::" , stringify ! ( __low ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __pthread_cond_s__bindgen_ty_2__bindgen_ty_1 > ( ) ) ) . __high as * const _ as usize } , 4usize , concat ! ( "Offset of field: " , stringify ! ( __pthread_cond_s__bindgen_ty_2__bindgen_ty_1 ) , "::" , stringify ! ( __high ) ) ) ; } # [ test ] fn bindgen_test_layout___pthread_cond_s__bindgen_ty_2 ( ) { assert_eq ! ( :: std :: mem :: size_of :: < __pthread_cond_s__bindgen_ty_2 > ( ) , 8usize , concat ! ( "Size of: " , stringify ! ( __pthread_cond_s__bindgen_ty_2 ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < __pthread_cond_s__bindgen_ty_2 > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( __pthread_cond_s__bindgen_ty_2 ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __pthread_cond_s__bindgen_ty_2 > ( ) ) ) . __g1_start as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( __pthread_cond_s__bindgen_ty_2 ) , "::" , stringify ! ( __g1_start ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __pthread_cond_s__bindgen_ty_2 > ( ) ) ) . __g1_start32 as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( __pthread_cond_s__bindgen_ty_2 ) , "::" , stringify ! ( __g1_start32 ) ) ) ; } # [ test ] fn bindgen_test_layout___pthread_cond_s ( ) { assert_eq ! ( :: std :: mem :: size_of :: < __pthread_cond_s > ( ) , 48usize , concat ! ( "Size of: " , stringify ! ( __pthread_cond_s ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < __pthread_cond_s > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( __pthread_cond_s ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __pthread_cond_s > ( ) ) ) . __g_refs as * const _ as usize } , 16usize , concat ! ( "Offset of field: " , stringify ! ( __pthread_cond_s ) , "::" , stringify ! ( __g_refs ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __pthread_cond_s > ( ) ) ) . __g_size as * const _ as usize } , 24usize , concat ! ( "Offset of field: " , stringify ! ( __pthread_cond_s ) , "::" , stringify ! ( __g_size ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __pthread_cond_s > ( ) ) ) . __g1_orig_size as * const _ as usize } , 32usize , concat ! ( "Offset of field: " , stringify ! ( __pthread_cond_s ) , "::" , stringify ! ( __g1_orig_size ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __pthread_cond_s > ( ) ) ) . __wrefs as * const _ as usize } , 36usize , concat ! ( "Offset of field: " , stringify ! ( __pthread_cond_s ) , "::" , stringify ! ( __wrefs ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __pthread_cond_s > ( ) ) ) . __g_signals as * const _ as usize } , 40usize , concat ! ( "Offset of field: " , stringify ! ( __pthread_cond_s ) , "::" , stringify ! ( __g_signals ) ) ) ; } pub type pthread_t = :: std :: os :: raw :: c_ulong ; # [ repr ( C ) ] # [ derive ( Copy , Clone ) ] pub union pthread_mutexattr_t { pub __size : [ :: std :: os :: raw :: c_char ; 4usize ] , pub __align : :: std :: os :: raw :: c_int , _bindgen_union_align : u32 , } # [ test ] fn bindgen_test_layout_pthread_mutexattr_t ( ) { assert_eq ! ( :: std :: mem :: size_of :: < pthread_mutexattr_t > ( ) , 4usize , concat ! ( "Size of: " , stringify ! ( pthread_mutexattr_t ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < pthread_mutexattr_t > ( ) , 4usize , concat ! ( "Alignment of " , stringify ! ( pthread_mutexattr_t ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < pthread_mutexattr_t > ( ) ) ) . __size as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( pthread_mutexattr_t ) , "::" , stringify ! ( __size ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < pthread_mutexattr_t > ( ) ) ) . __align as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( pthread_mutexattr_t ) , "::" , stringify ! ( __align ) ) ) ; } # [ repr ( C ) ] # [ derive ( Copy , Clone ) ] pub union pthread_condattr_t { pub __size : [ :: std :: os :: raw :: c_char ; 4usize ] , pub __align : :: std :: os :: raw :: c_int , _bindgen_union_align : u32 , } # [ test ] fn bindgen_test_layout_pthread_condattr_t ( ) { assert_eq ! ( :: std :: mem :: size_of :: < pthread_condattr_t > ( ) , 4usize , concat ! ( "Size of: " , stringify ! ( pthread_condattr_t ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < pthread_condattr_t > ( ) , 4usize , concat ! ( "Alignment of " , stringify ! ( pthread_condattr_t ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < pthread_condattr_t > ( ) ) ) . __size as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( pthread_condattr_t ) , "::" , stringify ! ( __size ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < pthread_condattr_t > ( ) ) ) . __align as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( pthread_condattr_t ) , "::" , stringify ! ( __align ) ) ) ; } pub type pthread_key_t = :: std :: os :: raw :: c_uint ; pub type pthread_once_t = :: std :: os :: raw :: c_int ; # [ repr ( C ) ] # [ derive ( Copy , Clone ) ] pub union pthread_attr_t { pub __size : [ :: std :: os :: raw :: c_char ; 56usize ] , pub __align : :: std :: os :: raw :: c_long , _bindgen_union_align : [ u64 ; 7usize ] , } # [ test ] fn bindgen_test_layout_pthread_attr_t ( ) { assert_eq ! ( :: std :: mem :: size_of :: < pthread_attr_t > ( ) , 56usize , concat ! ( "Size of: " , stringify ! ( pthread_attr_t ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < pthread_attr_t > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( pthread_attr_t ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < pthread_attr_t > ( ) ) ) . __size as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( pthread_attr_t ) , "::" , stringify ! ( __size ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < pthread_attr_t > ( ) ) ) . __align as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( pthread_attr_t ) , "::" , stringify ! ( __align ) ) ) ; } # [ repr ( C ) ] # [ derive ( Copy , Clone ) ] pub union pthread_mutex_t { pub __data : __pthread_mutex_s , pub __size : [ :: std :: os :: raw :: c_char ; 40usize ] , pub __align : :: std :: os :: raw :: c_long , _bindgen_union_align : [ u64 ; 5usize ] , } # [ test ] fn bindgen_test_layout_pthread_mutex_t ( ) { assert_eq ! ( :: std :: mem :: size_of :: < pthread_mutex_t > ( ) , 40usize , concat ! ( "Size of: " , stringify ! ( pthread_mutex_t ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < pthread_mutex_t > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( pthread_mutex_t ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < pthread_mutex_t > ( ) ) ) . __data as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( pthread_mutex_t ) , "::" , stringify ! ( __data ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < pthread_mutex_t > ( ) ) ) . __size as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( pthread_mutex_t ) , "::" , stringify ! ( __size ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < pthread_mutex_t > ( ) ) ) . __align as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( pthread_mutex_t ) , "::" , stringify ! ( __align ) ) ) ; } # [ repr ( C ) ] # [ derive ( Copy , Clone ) ] pub union pthread_cond_t { pub __data : __pthread_cond_s , pub __size : [ :: std :: os :: raw :: c_char ; 48usize ] , pub __align : :: std :: os :: raw :: c_longlong , _bindgen_union_align : [ u64 ; 6usize ] , } # [ test ] fn bindgen_test_layout_pthread_cond_t ( ) { assert_eq ! ( :: std :: mem :: size_of :: < pthread_cond_t > ( ) , 48usize , concat ! ( "Size of: " , stringify ! ( pthread_cond_t ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < pthread_cond_t > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( pthread_cond_t ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < pthread_cond_t > ( ) ) ) . __data as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( pthread_cond_t ) , "::" , stringify ! ( __data ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < pthread_cond_t > ( ) ) ) . __size as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( pthread_cond_t ) , "::" , stringify ! ( __size ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < pthread_cond_t > ( ) ) ) . __align as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( pthread_cond_t ) , "::" , stringify ! ( __align ) ) ) ; } # [ repr ( C ) ] # [ derive ( Copy , Clone ) ] pub union pthread_rwlock_t { pub __data : __pthread_rwlock_arch_t , pub __size : [ :: std :: os :: raw :: c_char ; 56usize ] , pub __align : :: std :: os :: raw :: c_long , _bindgen_union_align : [ u64 ; 7usize ] , } # [ test ] fn bindgen_test_layout_pthread_rwlock_t ( ) { assert_eq ! ( :: std :: mem :: size_of :: < pthread_rwlock_t > ( ) , 56usize , concat ! ( "Size of: " , stringify ! ( pthread_rwlock_t ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < pthread_rwlock_t > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( pthread_rwlock_t ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < pthread_rwlock_t > ( ) ) ) . __data as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( pthread_rwlock_t ) , "::" , stringify ! ( __data ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < pthread_rwlock_t > ( ) ) ) . __size as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( pthread_rwlock_t ) , "::" , stringify ! ( __size ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < pthread_rwlock_t > ( ) ) ) . __align as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( pthread_rwlock_t ) , "::" , stringify ! ( __align ) ) ) ; } # [ repr ( C ) ] # [ derive ( Copy , Clone ) ] pub union pthread_rwlockattr_t { pub __size : [ :: std :: os :: raw :: c_char ; 8usize ] , pub __align : :: std :: os :: raw :: c_long , _bindgen_union_align : u64 , } # [ test ] fn bindgen_test_layout_pthread_rwlockattr_t ( ) { assert_eq ! ( :: std :: mem :: size_of :: < pthread_rwlockattr_t > ( ) , 8usize , concat ! ( "Size of: " , stringify ! ( pthread_rwlockattr_t ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < pthread_rwlockattr_t > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( pthread_rwlockattr_t ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < pthread_rwlockattr_t > ( ) ) ) . __size as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( pthread_rwlockattr_t ) , "::" , stringify ! ( __size ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < pthread_rwlockattr_t > ( ) ) ) . __align as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( pthread_rwlockattr_t ) , "::" , stringify ! ( __align ) ) ) ; } pub type pthread_spinlock_t = :: std :: os :: raw :: c_int ; # [ repr ( C ) ] # [ derive ( Copy , Clone ) ] pub union pthread_barrier_t { pub __size : [ :: std :: os :: raw :: c_char ; 32usize ] , pub __align : :: std :: os :: raw :: c_long , _bindgen_union_align : [ u64 ; 4usize ] , } # [ test ] fn bindgen_test_layout_pthread_barrier_t ( ) { assert_eq ! ( :: std :: mem :: size_of :: < pthread_barrier_t > ( ) , 32usize , concat ! ( "Size of: " , stringify ! ( pthread_barrier_t ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < pthread_barrier_t > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( pthread_barrier_t ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < pthread_barrier_t > ( ) ) ) . __size as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( pthread_barrier_t ) , "::" , stringify ! ( __size ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < pthread_barrier_t > ( ) ) ) . __align as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( pthread_barrier_t ) , "::" , stringify ! ( __align ) ) ) ; } # [ repr ( C ) ] # [ derive ( Copy , Clone ) ] pub union pthread_barrierattr_t { pub __size : [ :: std :: os :: raw :: c_char ; 4usize ] , pub __align : :: std :: os :: raw :: c_int , _bindgen_union_align : u32 , } # [ test ] fn bindgen_test_layout_pthread_barrierattr_t ( ) { assert_eq ! ( :: std :: mem :: size_of :: < pthread_barrierattr_t > ( ) , 4usize , concat ! ( "Size of: " , stringify ! ( pthread_barrierattr_t ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < pthread_barrierattr_t > ( ) , 4usize , concat ! ( "Alignment of " , stringify ! ( pthread_barrierattr_t ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < pthread_barrierattr_t > ( ) ) ) . __size as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( pthread_barrierattr_t ) , "::" , stringify ! ( __size ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < pthread_barrierattr_t > ( ) ) ) . __align as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( pthread_barrierattr_t ) , "::" , stringify ! ( __align ) ) ) ; } extern "C" { pub fn random ( ) -> :: std :: os :: raw :: c_long ; } extern "C" { pub fn srandom ( __seed : :: std :: os :: raw :: c_uint ) ; } extern "C" { pub fn initstate ( __seed : :: std :: os :: raw :: c_uint , __statebuf : * mut :: std :: os :: raw :: c_char , __statelen : usize ) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn setstate ( __statebuf : * mut :: std :: os :: raw :: c_char ) -> * mut :: std :: os :: raw :: c_char ; } # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct random_data { pub fptr : * mut i32 , pub rptr : * mut i32 , pub state : * mut i32 , pub rand_type : :: std :: os :: raw :: c_int , pub rand_deg : :: std :: os :: raw :: c_int , pub rand_sep : :: std :: os :: raw :: c_int , pub end_ptr : * mut i32 , } # [ test ] fn bindgen_test_layout_random_data ( ) { assert_eq ! ( :: std :: mem :: size_of :: < random_data > ( ) , 48usize , concat ! ( "Size of: " , stringify ! ( random_data ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < random_data > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( random_data ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < random_data > ( ) ) ) . fptr as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( random_data ) , "::" , stringify ! ( fptr ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < random_data > ( ) ) ) . rptr as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( random_data ) , "::" , stringify ! ( rptr ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < random_data > ( ) ) ) . state as * const _ as usize } , 16usize , concat ! ( "Offset of field: " , stringify ! ( random_data ) , "::" , stringify ! ( state ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < random_data > ( ) ) ) . rand_type as * const _ as usize } , 24usize , concat ! ( "Offset of field: " , stringify ! ( random_data ) , "::" , stringify ! ( rand_type ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < random_data > ( ) ) ) . rand_deg as * const _ as usize } , 28usize , concat ! ( "Offset of field: " , stringify ! ( random_data ) , "::" , stringify ! ( rand_deg ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < random_data > ( ) ) ) . rand_sep as * const _ as usize } , 32usize , concat ! ( "Offset of field: " , stringify ! ( random_data ) , "::" , stringify ! ( rand_sep ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < random_data > ( ) ) ) . end_ptr as * const _ as usize } , 40usize , concat ! ( "Offset of field: " , stringify ! ( random_data ) , "::" , stringify ! ( end_ptr ) ) ) ; } extern "C" { pub fn random_r ( __buf : * mut random_data , __result : * mut i32 ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn srandom_r ( __seed : :: std :: os :: raw :: c_uint , __buf : * mut random_data ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn initstate_r ( __seed : :: std :: os :: raw :: c_uint , __statebuf : * mut :: std :: os :: raw :: c_char , __statelen : usize , __buf : * mut random_data ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn setstate_r ( __statebuf : * mut :: std :: os :: raw :: c_char , __buf : * mut random_data ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn rand ( ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn srand ( __seed : :: std :: os :: raw :: c_uint ) ; } extern "C" { pub fn rand_r ( __seed : * mut :: std :: os :: raw :: c_uint ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn drand48 ( ) -> f64 ; } extern "C" { pub fn erand48 ( __xsubi : * mut :: std :: os :: raw :: c_ushort ) -> f64 ; } extern "C" { pub fn lrand48 ( ) -> :: std :: os :: raw :: c_long ; } extern "C" { pub fn nrand48 ( __xsubi : * mut :: std :: os :: raw :: c_ushort ) -> :: std :: os :: raw :: c_long ; } extern "C" { pub fn mrand48 ( ) -> :: std :: os :: raw :: c_long ; } extern "C" { pub fn jrand48 ( __xsubi : * mut :: std :: os :: raw :: c_ushort ) -> :: std :: os :: raw :: c_long ; } extern "C" { pub fn srand48 ( __seedval : :: std :: os :: raw :: c_long ) ; } extern "C" { pub fn seed48 ( __seed16v : * mut :: std :: os :: raw :: c_ushort ) -> * mut :: std :: os :: raw :: c_ushort ; } extern "C" { pub fn lcong48 ( __param : * mut :: std :: os :: raw :: c_ushort ) ; } # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct drand48_data { pub __x : [ :: std :: os :: raw :: c_ushort ; 3usize ] , pub __old_x : [ :: std :: os :: raw :: c_ushort ; 3usize ] , pub __c : :: std :: os :: raw :: c_ushort , pub __init : :: std :: os :: raw :: c_ushort , pub __a : :: std :: os :: raw :: c_ulonglong , } # [ test ] fn bindgen_test_layout_drand48_data ( ) { assert_eq ! ( :: std :: mem :: size_of :: < drand48_data > ( ) , 24usize , concat ! ( "Size of: " , stringify ! ( drand48_data ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < drand48_data > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( drand48_data ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < drand48_data > ( ) ) ) . __x as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( drand48_data ) , "::" , stringify ! ( __x ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < drand48_data > ( ) ) ) . __old_x as * const _ as usize } , 6usize , concat ! ( "Offset of field: " , stringify ! ( drand48_data ) , "::" , stringify ! ( __old_x ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < drand48_data > ( ) ) ) . __c as * const _ as usize } , 12usize , concat ! ( "Offset of field: " , stringify ! ( drand48_data ) , "::" , stringify ! ( __c ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < drand48_data > ( ) ) ) . __init as * const _ as usize } , 14usize , concat ! ( "Offset of field: " , stringify ! ( drand48_data ) , "::" , stringify ! ( __init ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < drand48_data > ( ) ) ) . __a as * const _ as usize } , 16usize , concat ! ( "Offset of field: " , stringify ! ( drand48_data ) , "::" , stringify ! ( __a ) ) ) ; } extern "C" { pub fn drand48_r ( __buffer : * mut drand48_data , __result : * mut f64 ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn erand48_r ( __xsubi : * mut :: std :: os :: raw :: c_ushort , __buffer : * mut drand48_data , __result : * mut f64 ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn lrand48_r ( __buffer : * mut drand48_data , __result : * mut :: std :: os :: raw :: c_long ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn nrand48_r ( __xsubi : * mut :: std :: os :: raw :: c_ushort , __buffer : * mut drand48_data , __result : * mut :: std :: os :: raw :: c_long ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn mrand48_r ( __buffer : * mut drand48_data , __result : * mut :: std :: os :: raw :: c_long ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn jrand48_r ( __xsubi : * mut :: std :: os :: raw :: c_ushort , __buffer : * mut drand48_data , __result : * mut :: std :: os :: raw :: c_long ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn srand48_r ( __seedval : :: std :: os :: raw :: c_long , __buffer : * mut drand48_data ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn seed48_r ( __seed16v : * mut :: std :: os :: raw :: c_ushort , __buffer : * mut drand48_data ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn lcong48_r ( __param : * mut :: std :: os :: raw :: c_ushort , __buffer : * mut drand48_data ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn malloc ( __size : usize ) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn calloc ( __nmemb : usize , __size : usize ) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn realloc ( __ptr : * mut :: std :: os :: raw :: c_void , __size : usize ) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn free ( __ptr : * mut :: std :: os :: raw :: c_void ) ; } extern "C" { pub fn alloca ( __size : usize ) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn valloc ( __size : usize ) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn posix_memalign ( __memptr : * mut * mut :: std :: os :: raw :: c_void , __alignment : usize , __size : usize ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn aligned_alloc ( __alignment : usize , __size : usize ) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn abort ( ) ; } extern "C" { pub fn atexit ( __func : :: std :: option :: Option < unsafe extern "C" fn ( ) > ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn at_quick_exit ( __func : :: std :: option :: Option < unsafe extern "C" fn ( ) > ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn on_exit ( __func : :: std :: option :: Option < unsafe extern "C" fn ( __status : :: std :: os :: raw :: c_int , __arg : * mut :: std :: os :: raw :: c_void ) > , __arg : * mut :: std :: os :: raw :: c_void ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn exit ( __status : :: std :: os :: raw :: c_int ) ; } extern "C" { pub fn quick_exit ( __status : :: std :: os :: raw :: c_int ) ; } extern "C" { pub fn _Exit ( __status : :: std :: os :: raw :: c_int ) ; } extern "C" { pub fn getenv ( __name : * const :: std :: os :: raw :: c_char ) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn putenv ( __string : * mut :: std :: os :: raw :: c_char ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn setenv ( __name : * const :: std :: os :: raw :: c_char , __value : * const :: std :: os :: raw :: c_char , __replace : :: std :: os :: raw :: c_int ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn unsetenv ( __name : * const :: std :: os :: raw :: c_char ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn clearenv ( ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn mktemp ( __template : * mut :: std :: os :: raw :: c_char ) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn mkstemp ( __template : * mut :: std :: os :: raw :: c_char ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn mkstemps ( __template : * mut :: std :: os :: raw :: c_char , __suffixlen : :: std :: os :: raw :: c_int ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn mkdtemp ( __template : * mut :: std :: os :: raw :: c_char ) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn system ( __command : * const :: std :: os :: raw :: c_char ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn realpath ( __name : * const :: std :: os :: raw :: c_char , __resolved : * mut :: std :: os :: raw :: c_char ) -> * mut :: std :: os :: raw :: c_char ; } pub type __compar_fn_t = :: std :: option :: Option < unsafe extern "C" fn ( arg1 : * const :: std :: os :: raw :: c_void , arg2 : * const :: std :: os :: raw :: c_void ) -> :: std :: os :: raw :: c_int > ; extern "C" { pub fn bsearch ( __key : * const :: std :: os :: raw :: c_void , __base : * const :: std :: os :: raw :: c_void , __nmemb : usize , __size : usize , __compar : __compar_fn_t ) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn qsort ( __base : * mut :: std :: os :: raw :: c_void , __nmemb : usize , __size : usize , __compar : __compar_fn_t ) ; } extern "C" { pub fn abs ( __x : :: std :: os :: raw :: c_int ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn labs ( __x : :: std :: os :: raw :: c_long ) -> :: std :: os :: raw :: c_long ; } extern "C" { pub fn llabs ( __x : :: std :: os :: raw :: c_longlong ) -> :: std :: os :: raw :: c_longlong ; } extern "C" { pub fn div ( __numer : :: std :: os :: raw :: c_int , __denom : :: std :: os :: raw :: c_int ) -> div_t ; } extern "C" { pub fn ldiv ( __numer : :: std :: os :: raw :: c_long , __denom : :: std :: os :: raw :: c_long ) -> ldiv_t ; } extern "C" { pub fn lldiv ( __numer : :: std :: os :: raw :: c_longlong , __denom : :: std :: os :: raw :: c_longlong ) -> lldiv_t ; } extern "C" { pub fn ecvt ( __value : f64 , __ndigit : :: std :: os :: raw :: c_int , __decpt : * mut :: std :: os :: raw :: c_int , __sign : * mut :: std :: os :: raw :: c_int ) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn fcvt ( __value : f64 , __ndigit : :: std :: os :: raw :: c_int , __decpt : * mut :: std :: os :: raw :: c_int , __sign : * mut :: std :: os :: raw :: c_int ) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn gcvt ( __value : f64 , __ndigit : :: std :: os :: raw :: c_int , __buf : * mut :: std :: os :: raw :: c_char ) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn qecvt ( __value : f64 , __ndigit : :: std :: os :: raw :: c_int , __decpt : * mut :: std :: os :: raw :: c_int , __sign : * mut :: std :: os :: raw :: c_int ) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn qfcvt ( __value : f64 , __ndigit : :: std :: os :: raw :: c_int , __decpt : * mut :: std :: os :: raw :: c_int , __sign : * mut :: std :: os :: raw :: c_int ) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn qgcvt ( __value : f64 , __ndigit : :: std :: os :: raw :: c_int , __buf : * mut :: std :: os :: raw :: c_char ) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn ecvt_r ( __value : f64 , __ndigit : :: std :: os :: raw :: c_int , __decpt : * mut :: std :: os :: raw :: c_int , __sign : * mut :: std :: os :: raw :: c_int , __buf : * mut :: std :: os :: raw :: c_char , __len : usize ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fcvt_r ( __value : f64 , __ndigit : :: std :: os :: raw :: c_int , __decpt : * mut :: std :: os :: raw :: c_int , __sign : * mut :: std :: os :: raw :: c_int , __buf : * mut :: std :: os :: raw :: c_char , __len : usize ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn qecvt_r ( __value : f64 , __ndigit : :: std :: os :: raw :: c_int , __decpt : * mut :: std :: os :: raw :: c_int , __sign : * mut :: std :: os :: raw :: c_int , __buf : * mut :: std :: os :: raw :: c_char , __len : usize ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn qfcvt_r ( __value : f64 , __ndigit : :: std :: os :: raw :: c_int , __decpt : * mut :: std :: os :: raw :: c_int , __sign : * mut :: std :: os :: raw :: c_int , __buf : * mut :: std :: os :: raw :: c_char , __len : usize ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn mblen ( __s : * const :: std :: os :: raw :: c_char , __n : usize ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn mbtowc ( __pwc : * mut wchar_t , __s : * const :: std :: os :: raw :: c_char , __n : usize ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn wctomb ( __s : * mut :: std :: os :: raw :: c_char , __wchar : wchar_t ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn mbstowcs ( __pwcs : * mut wchar_t , __s : * const :: std :: os :: raw :: c_char , __n : usize ) -> usize ; } extern "C" { pub fn wcstombs ( __s : * mut :: std :: os :: raw :: c_char , __pwcs : * const wchar_t , __n : usize ) -> usize ; } extern "C" { pub fn rpmatch ( __response : * const :: std :: os :: raw :: c_char ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn getsubopt ( __optionp : * mut * mut :: std :: os :: raw :: c_char , __tokens : * const * mut :: std :: os :: raw :: c_char , __valuep : * mut * mut :: std :: os :: raw :: c_char ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn getloadavg ( __loadavg : * mut f64 , __nelem : :: std :: os :: raw :: c_int ) -> :: std :: os :: raw :: c_int ; } pub type float_t = f32 ; pub type double_t = f64 ; extern "C" { pub fn __fpclassify ( __value : f64 ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn __signbit ( __value : f64 ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn __isinf ( __value : f64 ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn __finite ( __value : f64 ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn __isnan ( __value : f64 ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn __iseqsig ( __x : f64 , __y : f64 ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn __issignaling ( __value : f64 ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn acos ( __x : f64 ) -> f64 ; } extern "C" { pub fn __acos ( __x : f64 ) -> f64 ; } extern "C" { pub fn asin ( __x : f64 ) -> f64 ; } extern "C" { pub fn __asin ( __x : f64 ) -> f64 ; } extern "C" { pub fn atan ( __x : f64 ) -> f64 ; } extern "C" { pub fn __atan ( __x : f64 ) -> f64 ; } extern "C" { pub fn atan2 ( __y : f64 , __x : f64 ) -> f64 ; } extern "C" { pub fn __atan2 ( __y : f64 , __x : f64 ) -> f64 ; } extern "C" { pub fn cos ( __x : f64 ) -> f64 ; } extern "C" { pub fn __cos ( __x : f64 ) -> f64 ; } extern "C" { pub fn sin ( __x : f64 ) -> f64 ; } extern "C" { pub fn __sin ( __x : f64 ) -> f64 ; } extern "C" { pub fn tan ( __x : f64 ) -> f64 ; } extern "C" { pub fn __tan ( __x : f64 ) -> f64 ; } extern "C" { pub fn cosh ( __x : f64 ) -> f64 ; } extern "C" { pub fn __cosh ( __x : f64 ) -> f64 ; } extern "C" { pub fn sinh ( __x : f64 ) -> f64 ; } extern "C" { pub fn __sinh ( __x : f64 ) -> f64 ; } extern "C" { pub fn tanh ( __x : f64 ) -> f64 ; } extern "C" { pub fn __tanh ( __x : f64 ) -> f64 ; } extern "C" { pub fn acosh ( __x : f64 ) -> f64 ; } extern "C" { pub fn __acosh ( __x : f64 ) -> f64 ; } extern "C" { pub fn asinh ( __x : f64 ) -> f64 ; } extern "C" { pub fn __asinh ( __x : f64 ) -> f64 ; } extern "C" { pub fn atanh ( __x : f64 ) -> f64 ; } extern "C" { pub fn __atanh ( __x : f64 ) -> f64 ; } extern "C" { pub fn exp ( __x : f64 ) -> f64 ; } extern "C" { pub fn __exp ( __x : f64 ) -> f64 ; } extern "C" { pub fn frexp ( __x : f64 , __exponent : * mut :: std :: os :: raw :: c_int ) -> f64 ; } extern "C" { pub fn __frexp ( __x : f64 , __exponent : * mut :: std :: os :: raw :: c_int ) -> f64 ; } extern "C" { pub fn ldexp ( __x : f64 , __exponent : :: std :: os :: raw :: c_int ) -> f64 ; } extern "C" { pub fn __ldexp ( __x : f64 , __exponent : :: std :: os :: raw :: c_int ) -> f64 ; } extern "C" { pub fn log ( __x : f64 ) -> f64 ; } extern "C" { pub fn __log ( __x : f64 ) -> f64 ; } extern "C" { pub fn log10 ( __x : f64 ) -> f64 ; } extern "C" { pub fn __log10 ( __x : f64 ) -> f64 ; } extern "C" { pub fn modf ( __x : f64 , __iptr : * mut f64 ) -> f64 ; } extern "C" { pub fn __modf ( __x : f64 , __iptr : * mut f64 ) -> f64 ; } extern "C" { pub fn expm1 ( __x : f64 ) -> f64 ; } extern "C" { pub fn __expm1 ( __x : f64 ) -> f64 ; } extern "C" { pub fn log1p ( __x : f64 ) -> f64 ; } extern "C" { pub fn __log1p ( __x : f64 ) -> f64 ; } extern "C" { pub fn logb ( __x : f64 ) -> f64 ; } extern "C" { pub fn __logb ( __x : f64 ) -> f64 ; } extern "C" { pub fn exp2 ( __x : f64 ) -> f64 ; } extern "C" { pub fn __exp2 ( __x : f64 ) -> f64 ; } extern "C" { pub fn log2 ( __x : f64 ) -> f64 ; } extern "C" { pub fn __log2 ( __x : f64 ) -> f64 ; } extern "C" { pub fn pow ( __x : f64 , __y : f64 ) -> f64 ; } extern "C" { pub fn __pow ( __x : f64 , __y : f64 ) -> f64 ; } extern "C" { pub fn sqrt ( __x : f64 ) -> f64 ; } extern "C" { pub fn __sqrt ( __x : f64 ) -> f64 ; } extern "C" { pub fn hypot ( __x : f64 , __y : f64 ) -> f64 ; } extern "C" { pub fn __hypot ( __x : f64 , __y : f64 ) -> f64 ; } extern "C" { pub fn cbrt ( __x : f64 ) -> f64 ; } extern "C" { pub fn __cbrt ( __x : f64 ) -> f64 ; } extern "C" { pub fn ceil ( __x : f64 ) -> f64 ; } extern "C" { pub fn __ceil ( __x : f64 ) -> f64 ; } extern "C" { pub fn fabs ( __x : f64 ) -> f64 ; } extern "C" { pub fn __fabs ( __x : f64 ) -> f64 ; } extern "C" { pub fn floor ( __x : f64 ) -> f64 ; } extern "C" { pub fn __floor ( __x : f64 ) -> f64 ; } extern "C" { pub fn fmod ( __x : f64 , __y : f64 ) -> f64 ; } extern "C" { pub fn __fmod ( __x : f64 , __y : f64 ) -> f64 ; } extern "C" { pub fn isinf ( __value : f64 ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn finite ( __value : f64 ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn drem ( __x : f64 , __y : f64 ) -> f64 ; } extern "C" { pub fn __drem ( __x : f64 , __y : f64 ) -> f64 ; } extern "C" { pub fn significand ( __x : f64 ) -> f64 ; } extern "C" { pub fn __significand ( __x : f64 ) -> f64 ; } extern "C" { pub fn copysign ( __x : f64 , __y : f64 ) -> f64 ; } extern "C" { pub fn __copysign ( __x : f64 , __y : f64 ) -> f64 ; } extern "C" { pub fn nan ( __tagb : * const :: std :: os :: raw :: c_char ) -> f64 ; } extern "C" { pub fn __nan ( __tagb : * const :: std :: os :: raw :: c_char ) -> f64 ; } extern "C" { pub fn isnan ( __value : f64 ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn j0 ( arg1 : f64 ) -> f64 ; } extern "C" { pub fn __j0 ( arg1 : f64 ) -> f64 ; } extern "C" { pub fn j1 ( arg1 : f64 ) -> f64 ; } extern "C" { pub fn __j1 ( arg1 : f64 ) -> f64 ; } extern "C" { pub fn jn ( arg1 : :: std :: os :: raw :: c_int , arg2 : f64 ) -> f64 ; } extern "C" { pub fn __jn ( arg1 : :: std :: os :: raw :: c_int , arg2 : f64 ) -> f64 ; } extern "C" { pub fn y0 ( arg1 : f64 ) -> f64 ; } extern "C" { pub fn __y0 ( arg1 : f64 ) -> f64 ; } extern "C" { pub fn y1 ( arg1 : f64 ) -> f64 ; } extern "C" { pub fn __y1 ( arg1 : f64 ) -> f64 ; } extern "C" { pub fn yn ( arg1 : :: std :: os :: raw :: c_int , arg2 : f64 ) -> f64 ; } extern "C" { pub fn __yn ( arg1 : :: std :: os :: raw :: c_int , arg2 : f64 ) -> f64 ; } extern "C" { pub fn erf ( arg1 : f64 ) -> f64 ; } extern "C" { pub fn __erf ( arg1 : f64 ) -> f64 ; } extern "C" { pub fn erfc ( arg1 : f64 ) -> f64 ; } extern "C" { pub fn __erfc ( arg1 : f64 ) -> f64 ; } extern "C" { pub fn lgamma ( arg1 : f64 ) -> f64 ; } extern "C" { pub fn __lgamma ( arg1 : f64 ) -> f64 ; } extern "C" { pub fn tgamma ( arg1 : f64 ) -> f64 ; } extern "C" { pub fn __tgamma ( arg1 : f64 ) -> f64 ; } extern "C" { pub fn gamma ( arg1 : f64 ) -> f64 ; } extern "C" { pub fn __gamma ( arg1 : f64 ) -> f64 ; } extern "C" { pub fn lgamma_r ( arg1 : f64 , __signgamp : * mut :: std :: os :: raw :: c_int ) -> f64 ; } extern "C" { pub fn __lgamma_r ( arg1 : f64 , __signgamp : * mut :: std :: os :: raw :: c_int ) -> f64 ; } extern "C" { pub fn rint ( __x : f64 ) -> f64 ; } extern "C" { pub fn __rint ( __x : f64 ) -> f64 ; } extern "C" { pub fn nextafter ( __x : f64 , __y : f64 ) -> f64 ; } extern "C" { pub fn __nextafter ( __x : f64 , __y : f64 ) -> f64 ; } extern "C" { pub fn nexttoward ( __x : f64 , __y : f64 ) -> f64 ; } extern "C" { pub fn __nexttoward ( __x : f64 , __y : f64 ) -> f64 ; } extern "C" { pub fn remainder ( __x : f64 , __y : f64 ) -> f64 ; } extern "C" { pub fn __remainder ( __x : f64 , __y : f64 ) -> f64 ; } extern "C" { pub fn scalbn ( __x : f64 , __n : :: std :: os :: raw :: c_int ) -> f64 ; } extern "C" { pub fn __scalbn ( __x : f64 , __n : :: std :: os :: raw :: c_int ) -> f64 ; } extern "C" { pub fn ilogb ( __x : f64 ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn __ilogb ( __x : f64 ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn scalbln ( __x : f64 , __n : :: std :: os :: raw :: c_long ) -> f64 ; } extern "C" { pub fn __scalbln ( __x : f64 , __n : :: std :: os :: raw :: c_long ) -> f64 ; } extern "C" { pub fn nearbyint ( __x : f64 ) -> f64 ; } extern "C" { pub fn __nearbyint ( __x : f64 ) -> f64 ; } extern "C" { pub fn round ( __x : f64 ) -> f64 ; } extern "C" { pub fn __round ( __x : f64 ) -> f64 ; } extern "C" { pub fn trunc ( __x : f64 ) -> f64 ; } extern "C" { pub fn __trunc ( __x : f64 ) -> f64 ; } extern "C" { pub fn remquo ( __x : f64 , __y : f64 , __quo : * mut :: std :: os :: raw :: c_int ) -> f64 ; } extern "C" { pub fn __remquo ( __x : f64 , __y : f64 , __quo : * mut :: std :: os :: raw :: c_int ) -> f64 ; } extern "C" { pub fn lrint ( __x : f64 ) -> :: std :: os :: raw :: c_long ; } extern "C" { pub fn __lrint ( __x : f64 ) -> :: std :: os :: raw :: c_long ; } extern "C" { pub fn llrint ( __x : f64 ) -> :: std :: os :: raw :: c_longlong ; } extern "C" { pub fn __llrint ( __x : f64 ) -> :: std :: os :: raw :: c_longlong ; } extern "C" { pub fn lround ( __x : f64 ) -> :: std :: os :: raw :: c_long ; } extern "C" { pub fn __lround ( __x : f64 ) -> :: std :: os :: raw :: c_long ; } extern "C" { pub fn llround ( __x : f64 ) -> :: std :: os :: raw :: c_longlong ; } extern "C" { pub fn __llround ( __x : f64 ) -> :: std :: os :: raw :: c_longlong ; } extern "C" { pub fn fdim ( __x : f64 , __y : f64 ) -> f64 ; } extern "C" { pub fn __fdim ( __x : f64 , __y : f64 ) -> f64 ; } extern "C" { pub fn fmax ( __x : f64 , __y : f64 ) -> f64 ; } extern "C" { pub fn __fmax ( __x : f64 , __y : f64 ) -> f64 ; } extern "C" { pub fn fmin ( __x : f64 , __y : f64 ) -> f64 ; } extern "C" { pub fn __fmin ( __x : f64 , __y : f64 ) -> f64 ; } extern "C" { pub fn fma ( __x : f64 , __y : f64 , __z : f64 ) -> f64 ; } extern "C" { pub fn __fma ( __x : f64 , __y : f64 , __z : f64 ) -> f64 ; } extern "C" { pub fn scalb ( __x : f64 , __n : f64 ) -> f64 ; } extern "C" { pub fn __scalb ( __x : f64 , __n : f64 ) -> f64 ; } extern "C" { pub fn __fpclassifyf ( __value : f32 ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn __signbitf ( __value : f32 ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn __isinff ( __value : f32 ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn __finitef ( __value : f32 ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn __isnanf ( __value : f32 ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn __iseqsigf ( __x : f32 , __y : f32 ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn __issignalingf ( __value : f32 ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn acosf ( __x : f32 ) -> f32 ; } extern "C" { pub fn __acosf ( __x : f32 ) -> f32 ; } extern "C" { pub fn asinf ( __x : f32 ) -> f32 ; } extern "C" { pub fn __asinf ( __x : f32 ) -> f32 ; } extern "C" { pub fn atanf ( __x : f32 ) -> f32 ; } extern "C" { pub fn __atanf ( __x : f32 ) -> f32 ; } extern "C" { pub fn atan2f ( __y : f32 , __x : f32 ) -> f32 ; } extern "C" { pub fn __atan2f ( __y : f32 , __x : f32 ) -> f32 ; } extern "C" { pub fn cosf ( __x : f32 ) -> f32 ; } extern "C" { pub fn __cosf ( __x : f32 ) -> f32 ; } extern "C" { pub fn sinf ( __x : f32 ) -> f32 ; } extern "C" { pub fn __sinf ( __x : f32 ) -> f32 ; } extern "C" { pub fn tanf ( __x : f32 ) -> f32 ; } extern "C" { pub fn __tanf ( __x : f32 ) -> f32 ; } extern "C" { pub fn coshf ( __x : f32 ) -> f32 ; } extern "C" { pub fn __coshf ( __x : f32 ) -> f32 ; } extern "C" { pub fn sinhf ( __x : f32 ) -> f32 ; } extern "C" { pub fn __sinhf ( __x : f32 ) -> f32 ; } extern "C" { pub fn tanhf ( __x : f32 ) -> f32 ; } extern "C" { pub fn __tanhf ( __x : f32 ) -> f32 ; } extern "C" { pub fn acoshf ( __x : f32 ) -> f32 ; } extern "C" { pub fn __acoshf ( __x : f32 ) -> f32 ; } extern "C" { pub fn asinhf ( __x : f32 ) -> f32 ; } extern "C" { pub fn __asinhf ( __x : f32 ) -> f32 ; } extern "C" { pub fn atanhf ( __x : f32 ) -> f32 ; } extern "C" { pub fn __atanhf ( __x : f32 ) -> f32 ; } extern "C" { pub fn expf ( __x : f32 ) -> f32 ; } extern "C" { pub fn __expf ( __x : f32 ) -> f32 ; } extern "C" { pub fn frexpf ( __x : f32 , __exponent : * mut :: std :: os :: raw :: c_int ) -> f32 ; } extern "C" { pub fn __frexpf ( __x : f32 , __exponent : * mut :: std :: os :: raw :: c_int ) -> f32 ; } extern "C" { pub fn ldexpf ( __x : f32 , __exponent : :: std :: os :: raw :: c_int ) -> f32 ; } extern "C" { pub fn __ldexpf ( __x : f32 , __exponent : :: std :: os :: raw :: c_int ) -> f32 ; } extern "C" { pub fn logf ( __x : f32 ) -> f32 ; } extern "C" { pub fn __logf ( __x : f32 ) -> f32 ; } extern "C" { pub fn log10f ( __x : f32 ) -> f32 ; } extern "C" { pub fn __log10f ( __x : f32 ) -> f32 ; } extern "C" { pub fn modff ( __x : f32 , __iptr : * mut f32 ) -> f32 ; } extern "C" { pub fn __modff ( __x : f32 , __iptr : * mut f32 ) -> f32 ; } extern "C" { pub fn expm1f ( __x : f32 ) -> f32 ; } extern "C" { pub fn __expm1f ( __x : f32 ) -> f32 ; } extern "C" { pub fn log1pf ( __x : f32 ) -> f32 ; } extern "C" { pub fn __log1pf ( __x : f32 ) -> f32 ; } extern "C" { pub fn logbf ( __x : f32 ) -> f32 ; } extern "C" { pub fn __logbf ( __x : f32 ) -> f32 ; } extern "C" { pub fn exp2f ( __x : f32 ) -> f32 ; } extern "C" { pub fn __exp2f ( __x : f32 ) -> f32 ; } extern "C" { pub fn log2f ( __x : f32 ) -> f32 ; } extern "C" { pub fn __log2f ( __x : f32 ) -> f32 ; } extern "C" { pub fn powf ( __x : f32 , __y : f32 ) -> f32 ; } extern "C" { pub fn __powf ( __x : f32 , __y : f32 ) -> f32 ; } extern "C" { pub fn sqrtf ( __x : f32 ) -> f32 ; } extern "C" { pub fn __sqrtf ( __x : f32 ) -> f32 ; } extern "C" { pub fn hypotf ( __x : f32 , __y : f32 ) -> f32 ; } extern "C" { pub fn __hypotf ( __x : f32 , __y : f32 ) -> f32 ; } extern "C" { pub fn cbrtf ( __x : f32 ) -> f32 ; } extern "C" { pub fn __cbrtf ( __x : f32 ) -> f32 ; } extern "C" { pub fn ceilf ( __x : f32 ) -> f32 ; } extern "C" { pub fn __ceilf ( __x : f32 ) -> f32 ; } extern "C" { pub fn fabsf ( __x : f32 ) -> f32 ; } extern "C" { pub fn __fabsf ( __x : f32 ) -> f32 ; } extern "C" { pub fn floorf ( __x : f32 ) -> f32 ; } extern "C" { pub fn __floorf ( __x : f32 ) -> f32 ; } extern "C" { pub fn fmodf ( __x : f32 , __y : f32 ) -> f32 ; } extern "C" { pub fn __fmodf ( __x : f32 , __y : f32 ) -> f32 ; } extern "C" { pub fn isinff ( __value : f32 ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn finitef ( __value : f32 ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn dremf ( __x : f32 , __y : f32 ) -> f32 ; } extern "C" { pub fn __dremf ( __x : f32 , __y : f32 ) -> f32 ; } extern "C" { pub fn significandf ( __x : f32 ) -> f32 ; } extern "C" { pub fn __significandf ( __x : f32 ) -> f32 ; } extern "C" { pub fn copysignf ( __x : f32 , __y : f32 ) -> f32 ; } extern "C" { pub fn __copysignf ( __x : f32 , __y : f32 ) -> f32 ; } extern "C" { pub fn nanf ( __tagb : * const :: std :: os :: raw :: c_char ) -> f32 ; } extern "C" { pub fn __nanf ( __tagb : * const :: std :: os :: raw :: c_char ) -> f32 ; } extern "C" { pub fn isnanf ( __value : f32 ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn j0f ( arg1 : f32 ) -> f32 ; } extern "C" { pub fn __j0f ( arg1 : f32 ) -> f32 ; } extern "C" { pub fn j1f ( arg1 : f32 ) -> f32 ; } extern "C" { pub fn __j1f ( arg1 : f32 ) -> f32 ; } extern "C" { pub fn jnf ( arg1 : :: std :: os :: raw :: c_int , arg2 : f32 ) -> f32 ; } extern "C" { pub fn __jnf ( arg1 : :: std :: os :: raw :: c_int , arg2 : f32 ) -> f32 ; } extern "C" { pub fn y0f ( arg1 : f32 ) -> f32 ; } extern "C" { pub fn __y0f ( arg1 : f32 ) -> f32 ; } extern "C" { pub fn y1f ( arg1 : f32 ) -> f32 ; } extern "C" { pub fn __y1f ( arg1 : f32 ) -> f32 ; } extern "C" { pub fn ynf ( arg1 : :: std :: os :: raw :: c_int , arg2 : f32 ) -> f32 ; } extern "C" { pub fn __ynf ( arg1 : :: std :: os :: raw :: c_int , arg2 : f32 ) -> f32 ; } extern "C" { pub fn erff ( arg1 : f32 ) -> f32 ; } extern "C" { pub fn __erff ( arg1 : f32 ) -> f32 ; } extern "C" { pub fn erfcf ( arg1 : f32 ) -> f32 ; } extern "C" { pub fn __erfcf ( arg1 : f32 ) -> f32 ; } extern "C" { pub fn lgammaf ( arg1 : f32 ) -> f32 ; } extern "C" { pub fn __lgammaf ( arg1 : f32 ) -> f32 ; } extern "C" { pub fn tgammaf ( arg1 : f32 ) -> f32 ; } extern "C" { pub fn __tgammaf ( arg1 : f32 ) -> f32 ; } extern "C" { pub fn gammaf ( arg1 : f32 ) -> f32 ; } extern "C" { pub fn __gammaf ( arg1 : f32 ) -> f32 ; } extern "C" { pub fn lgammaf_r ( arg1 : f32 , __signgamp : * mut :: std :: os :: raw :: c_int ) -> f32 ; } extern "C" { pub fn __lgammaf_r ( arg1 : f32 , __signgamp : * mut :: std :: os :: raw :: c_int ) -> f32 ; } extern "C" { pub fn rintf ( __x : f32 ) -> f32 ; } extern "C" { pub fn __rintf ( __x : f32 ) -> f32 ; } extern "C" { pub fn nextafterf ( __x : f32 , __y : f32 ) -> f32 ; } extern "C" { pub fn __nextafterf ( __x : f32 , __y : f32 ) -> f32 ; } extern "C" { pub fn nexttowardf ( __x : f32 , __y : f64 ) -> f32 ; } extern "C" { pub fn __nexttowardf ( __x : f32 , __y : f64 ) -> f32 ; } extern "C" { pub fn remainderf ( __x : f32 , __y : f32 ) -> f32 ; } extern "C" { pub fn __remainderf ( __x : f32 , __y : f32 ) -> f32 ; } extern "C" { pub fn scalbnf ( __x : f32 , __n : :: std :: os :: raw :: c_int ) -> f32 ; } extern "C" { pub fn __scalbnf ( __x : f32 , __n : :: std :: os :: raw :: c_int ) -> f32 ; } extern "C" { pub fn ilogbf ( __x : f32 ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn __ilogbf ( __x : f32 ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn scalblnf ( __x : f32 , __n : :: std :: os :: raw :: c_long ) -> f32 ; } extern "C" { pub fn __scalblnf ( __x : f32 , __n : :: std :: os :: raw :: c_long ) -> f32 ; } extern "C" { pub fn nearbyintf ( __x : f32 ) -> f32 ; } extern "C" { pub fn __nearbyintf ( __x : f32 ) -> f32 ; } extern "C" { pub fn roundf ( __x : f32 ) -> f32 ; } extern "C" { pub fn __roundf ( __x : f32 ) -> f32 ; } extern "C" { pub fn truncf ( __x : f32 ) -> f32 ; } extern "C" { pub fn __truncf ( __x : f32 ) -> f32 ; } extern "C" { pub fn remquof ( __x : f32 , __y : f32 , __quo : * mut :: std :: os :: raw :: c_int ) -> f32 ; } extern "C" { pub fn __remquof ( __x : f32 , __y : f32 , __quo : * mut :: std :: os :: raw :: c_int ) -> f32 ; } extern "C" { pub fn lrintf ( __x : f32 ) -> :: std :: os :: raw :: c_long ; } extern "C" { pub fn __lrintf ( __x : f32 ) -> :: std :: os :: raw :: c_long ; } extern "C" { pub fn llrintf ( __x : f32 ) -> :: std :: os :: raw :: c_longlong ; } extern "C" { pub fn __llrintf ( __x : f32 ) -> :: std :: os :: raw :: c_longlong ; } extern "C" { pub fn lroundf ( __x : f32 ) -> :: std :: os :: raw :: c_long ; } extern "C" { pub fn __lroundf ( __x : f32 ) -> :: std :: os :: raw :: c_long ; } extern "C" { pub fn llroundf ( __x : f32 ) -> :: std :: os :: raw :: c_longlong ; } extern "C" { pub fn __llroundf ( __x : f32 ) -> :: std :: os :: raw :: c_longlong ; } extern "C" { pub fn fdimf ( __x : f32 , __y : f32 ) -> f32 ; } extern "C" { pub fn __fdimf ( __x : f32 , __y : f32 ) -> f32 ; } extern "C" { pub fn fmaxf ( __x : f32 , __y : f32 ) -> f32 ; } extern "C" { pub fn __fmaxf ( __x : f32 , __y : f32 ) -> f32 ; } extern "C" { pub fn fminf ( __x : f32 , __y : f32 ) -> f32 ; } extern "C" { pub fn __fminf ( __x : f32 , __y : f32 ) -> f32 ; } extern "C" { pub fn fmaf ( __x : f32 , __y : f32 , __z : f32 ) -> f32 ; } extern "C" { pub fn __fmaf ( __x : f32 , __y : f32 , __z : f32 ) -> f32 ; } extern "C" { pub fn scalbf ( __x : f32 , __n : f32 ) -> f32 ; } extern "C" { pub fn __scalbf ( __x : f32 , __n : f32 ) -> f32 ; } extern "C" { pub fn __fpclassifyl ( __value : f64 ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn __signbitl ( __value : f64 ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn __isinfl ( __value : f64 ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn __finitel ( __value : f64 ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn __isnanl ( __value : f64 ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn __iseqsigl ( __x : f64 , __y : f64 ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn __issignalingl ( __value : f64 ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn acosl ( __x : f64 ) -> f64 ; } extern "C" { pub fn __acosl ( __x : f64 ) -> f64 ; } extern "C" { pub fn asinl ( __x : f64 ) -> f64 ; } extern "C" { pub fn __asinl ( __x : f64 ) -> f64 ; } extern "C" { pub fn atanl ( __x : f64 ) -> f64 ; } extern "C" { pub fn __atanl ( __x : f64 ) -> f64 ; } extern "C" { pub fn atan2l ( __y : f64 , __x : f64 ) -> f64 ; } extern "C" { pub fn __atan2l ( __y : f64 , __x : f64 ) -> f64 ; } extern "C" { pub fn cosl ( __x : f64 ) -> f64 ; } extern "C" { pub fn __cosl ( __x : f64 ) -> f64 ; } extern "C" { pub fn sinl ( __x : f64 ) -> f64 ; } extern "C" { pub fn __sinl ( __x : f64 ) -> f64 ; } extern "C" { pub fn tanl ( __x : f64 ) -> f64 ; } extern "C" { pub fn __tanl ( __x : f64 ) -> f64 ; } extern "C" { pub fn coshl ( __x : f64 ) -> f64 ; } extern "C" { pub fn __coshl ( __x : f64 ) -> f64 ; } extern "C" { pub fn sinhl ( __x : f64 ) -> f64 ; } extern "C" { pub fn __sinhl ( __x : f64 ) -> f64 ; } extern "C" { pub fn tanhl ( __x : f64 ) -> f64 ; } extern "C" { pub fn __tanhl ( __x : f64 ) -> f64 ; } extern "C" { pub fn acoshl ( __x : f64 ) -> f64 ; } extern "C" { pub fn __acoshl ( __x : f64 ) -> f64 ; } extern "C" { pub fn asinhl ( __x : f64 ) -> f64 ; } extern "C" { pub fn __asinhl ( __x : f64 ) -> f64 ; } extern "C" { pub fn atanhl ( __x : f64 ) -> f64 ; } extern "C" { pub fn __atanhl ( __x : f64 ) -> f64 ; } extern "C" { pub fn expl ( __x : f64 ) -> f64 ; } extern "C" { pub fn __expl ( __x : f64 ) -> f64 ; } extern "C" { pub fn frexpl ( __x : f64 , __exponent : * mut :: std :: os :: raw :: c_int ) -> f64 ; } extern "C" { pub fn __frexpl ( __x : f64 , __exponent : * mut :: std :: os :: raw :: c_int ) -> f64 ; } extern "C" { pub fn ldexpl ( __x : f64 , __exponent : :: std :: os :: raw :: c_int ) -> f64 ; } extern "C" { pub fn __ldexpl ( __x : f64 , __exponent : :: std :: os :: raw :: c_int ) -> f64 ; } extern "C" { pub fn logl ( __x : f64 ) -> f64 ; } extern "C" { pub fn __logl ( __x : f64 ) -> f64 ; } extern "C" { pub fn log10l ( __x : f64 ) -> f64 ; } extern "C" { pub fn __log10l ( __x : f64 ) -> f64 ; } extern "C" { pub fn modfl ( __x : f64 , __iptr : * mut f64 ) -> f64 ; } extern "C" { pub fn __modfl ( __x : f64 , __iptr : * mut f64 ) -> f64 ; } extern "C" { pub fn expm1l ( __x : f64 ) -> f64 ; } extern "C" { pub fn __expm1l ( __x : f64 ) -> f64 ; } extern "C" { pub fn log1pl ( __x : f64 ) -> f64 ; } extern "C" { pub fn __log1pl ( __x : f64 ) -> f64 ; } extern "C" { pub fn logbl ( __x : f64 ) -> f64 ; } extern "C" { pub fn __logbl ( __x : f64 ) -> f64 ; } extern "C" { pub fn exp2l ( __x : f64 ) -> f64 ; } extern "C" { pub fn __exp2l ( __x : f64 ) -> f64 ; } extern "C" { pub fn log2l ( __x : f64 ) -> f64 ; } extern "C" { pub fn __log2l ( __x : f64 ) -> f64 ; } extern "C" { pub fn powl ( __x : f64 , __y : f64 ) -> f64 ; } extern "C" { pub fn __powl ( __x : f64 , __y : f64 ) -> f64 ; } extern "C" { pub fn sqrtl ( __x : f64 ) -> f64 ; } extern "C" { pub fn __sqrtl ( __x : f64 ) -> f64 ; } extern "C" { pub fn hypotl ( __x : f64 , __y : f64 ) -> f64 ; } extern "C" { pub fn __hypotl ( __x : f64 , __y : f64 ) -> f64 ; } extern "C" { pub fn cbrtl ( __x : f64 ) -> f64 ; } extern "C" { pub fn __cbrtl ( __x : f64 ) -> f64 ; } extern "C" { pub fn ceill ( __x : f64 ) -> f64 ; } extern "C" { pub fn __ceill ( __x : f64 ) -> f64 ; } extern "C" { pub fn fabsl ( __x : f64 ) -> f64 ; } extern "C" { pub fn __fabsl ( __x : f64 ) -> f64 ; } extern "C" { pub fn floorl ( __x : f64 ) -> f64 ; } extern "C" { pub fn __floorl ( __x : f64 ) -> f64 ; } extern "C" { pub fn fmodl ( __x : f64 , __y : f64 ) -> f64 ; } extern "C" { pub fn __fmodl ( __x : f64 , __y : f64 ) -> f64 ; } extern "C" { pub fn isinfl ( __value : f64 ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn finitel ( __value : f64 ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn dreml ( __x : f64 , __y : f64 ) -> f64 ; } extern "C" { pub fn __dreml ( __x : f64 , __y : f64 ) -> f64 ; } extern "C" { pub fn significandl ( __x : f64 ) -> f64 ; } extern "C" { pub fn __significandl ( __x : f64 ) -> f64 ; } extern "C" { pub fn copysignl ( __x : f64 , __y : f64 ) -> f64 ; } extern "C" { pub fn __copysignl ( __x : f64 , __y : f64 ) -> f64 ; } extern "C" { pub fn nanl ( __tagb : * const :: std :: os :: raw :: c_char ) -> f64 ; } extern "C" { pub fn __nanl ( __tagb : * const :: std :: os :: raw :: c_char ) -> f64 ; } extern "C" { pub fn isnanl ( __value : f64 ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn j0l ( arg1 : f64 ) -> f64 ; } extern "C" { pub fn __j0l ( arg1 : f64 ) -> f64 ; } extern "C" { pub fn j1l ( arg1 : f64 ) -> f64 ; } extern "C" { pub fn __j1l ( arg1 : f64 ) -> f64 ; } extern "C" { pub fn jnl ( arg1 : :: std :: os :: raw :: c_int , arg2 : f64 ) -> f64 ; } extern "C" { pub fn __jnl ( arg1 : :: std :: os :: raw :: c_int , arg2 : f64 ) -> f64 ; } extern "C" { pub fn y0l ( arg1 : f64 ) -> f64 ; } extern "C" { pub fn __y0l ( arg1 : f64 ) -> f64 ; } extern "C" { pub fn y1l ( arg1 : f64 ) -> f64 ; } extern "C" { pub fn __y1l ( arg1 : f64 ) -> f64 ; } extern "C" { pub fn ynl ( arg1 : :: std :: os :: raw :: c_int , arg2 : f64 ) -> f64 ; } extern "C" { pub fn __ynl ( arg1 : :: std :: os :: raw :: c_int , arg2 : f64 ) -> f64 ; } extern "C" { pub fn erfl ( arg1 : f64 ) -> f64 ; } extern "C" { pub fn __erfl ( arg1 : f64 ) -> f64 ; } extern "C" { pub fn erfcl ( arg1 : f64 ) -> f64 ; } extern "C" { pub fn __erfcl ( arg1 : f64 ) -> f64 ; } extern "C" { pub fn lgammal ( arg1 : f64 ) -> f64 ; } extern "C" { pub fn __lgammal ( arg1 : f64 ) -> f64 ; } extern "C" { pub fn tgammal ( arg1 : f64 ) -> f64 ; } extern "C" { pub fn __tgammal ( arg1 : f64 ) -> f64 ; } extern "C" { pub fn gammal ( arg1 : f64 ) -> f64 ; } extern "C" { pub fn __gammal ( arg1 : f64 ) -> f64 ; } extern "C" { pub fn lgammal_r ( arg1 : f64 , __signgamp : * mut :: std :: os :: raw :: c_int ) -> f64 ; } extern "C" { pub fn __lgammal_r ( arg1 : f64 , __signgamp : * mut :: std :: os :: raw :: c_int ) -> f64 ; } extern "C" { pub fn rintl ( __x : f64 ) -> f64 ; } extern "C" { pub fn __rintl ( __x : f64 ) -> f64 ; } extern "C" { pub fn nextafterl ( __x : f64 , __y : f64 ) -> f64 ; } extern "C" { pub fn __nextafterl ( __x : f64 , __y : f64 ) -> f64 ; } extern "C" { pub fn nexttowardl ( __x : f64 , __y : f64 ) -> f64 ; } extern "C" { pub fn __nexttowardl ( __x : f64 , __y : f64 ) -> f64 ; } extern "C" { pub fn remainderl ( __x : f64 , __y : f64 ) -> f64 ; } extern "C" { pub fn __remainderl ( __x : f64 , __y : f64 ) -> f64 ; } extern "C" { pub fn scalbnl ( __x : f64 , __n : :: std :: os :: raw :: c_int ) -> f64 ; } extern "C" { pub fn __scalbnl ( __x : f64 , __n : :: std :: os :: raw :: c_int ) -> f64 ; } extern "C" { pub fn ilogbl ( __x : f64 ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn __ilogbl ( __x : f64 ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn scalblnl ( __x : f64 , __n : :: std :: os :: raw :: c_long ) -> f64 ; } extern "C" { pub fn __scalblnl ( __x : f64 , __n : :: std :: os :: raw :: c_long ) -> f64 ; } extern "C" { pub fn nearbyintl ( __x : f64 ) -> f64 ; } extern "C" { pub fn __nearbyintl ( __x : f64 ) -> f64 ; } extern "C" { pub fn roundl ( __x : f64 ) -> f64 ; } extern "C" { pub fn __roundl ( __x : f64 ) -> f64 ; } extern "C" { pub fn truncl ( __x : f64 ) -> f64 ; } extern "C" { pub fn __truncl ( __x : f64 ) -> f64 ; } extern "C" { pub fn remquol ( __x : f64 , __y : f64 , __quo : * mut :: std :: os :: raw :: c_int ) -> f64 ; } extern "C" { pub fn __remquol ( __x : f64 , __y : f64 , __quo : * mut :: std :: os :: raw :: c_int ) -> f64 ; } extern "C" { pub fn lrintl ( __x : f64 ) -> :: std :: os :: raw :: c_long ; } extern "C" { pub fn __lrintl ( __x : f64 ) -> :: std :: os :: raw :: c_long ; } extern "C" { pub fn llrintl ( __x : f64 ) -> :: std :: os :: raw :: c_longlong ; } extern "C" { pub fn __llrintl ( __x : f64 ) -> :: std :: os :: raw :: c_longlong ; } extern "C" { pub fn lroundl ( __x : f64 ) -> :: std :: os :: raw :: c_long ; } extern "C" { pub fn __lroundl ( __x : f64 ) -> :: std :: os :: raw :: c_long ; } extern "C" { pub fn llroundl ( __x : f64 ) -> :: std :: os :: raw :: c_longlong ; } extern "C" { pub fn __llroundl ( __x : f64 ) -> :: std :: os :: raw :: c_longlong ; } extern "C" { pub fn fdiml ( __x : f64 , __y : f64 ) -> f64 ; } extern "C" { pub fn __fdiml ( __x : f64 , __y : f64 ) -> f64 ; } extern "C" { pub fn fmaxl ( __x : f64 , __y : f64 ) -> f64 ; } extern "C" { pub fn __fmaxl ( __x : f64 , __y : f64 ) -> f64 ; } extern "C" { pub fn fminl ( __x : f64 , __y : f64 ) -> f64 ; } extern "C" { pub fn __fminl ( __x : f64 , __y : f64 ) -> f64 ; } extern "C" { pub fn fmal ( __x : f64 , __y : f64 , __z : f64 ) -> f64 ; } extern "C" { pub fn __fmal ( __x : f64 , __y : f64 , __z : f64 ) -> f64 ; } extern "C" { pub fn scalbl ( __x : f64 , __n : f64 ) -> f64 ; } extern "C" { pub fn __scalbl ( __x : f64 , __n : f64 ) -> f64 ; } extern "C" { # [ link_name = "\u{1}signgam" ] pub static mut signgam : :: std :: os :: raw :: c_int ; } pub const FP_NAN : _bindgen_ty_1 = 0 ; pub const FP_INFINITE : _bindgen_ty_1 = 1 ; pub const FP_ZERO : _bindgen_ty_1 = 2 ; pub const FP_SUBNORMAL : _bindgen_ty_1 = 3 ; pub const FP_NORMAL : _bindgen_ty_1 = 4 ; pub type _bindgen_ty_1 = u32 ; extern "C" { # [ link_name = "\u{1}tcfatalfunc" ] pub static mut tcfatalfunc : :: std :: option :: Option < unsafe extern "C" fn ( arg1 : * const :: std :: os :: raw :: c_char ) > ; } extern "C" { pub fn tcmalloc ( size : usize ) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn tccalloc ( nmemb : usize , size : usize ) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn tcrealloc ( ptr : * mut :: std :: os :: raw :: c_void , size : usize ) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn tcmemdup ( ptr : * const :: std :: os :: raw :: c_void , size : usize ) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn tcstrdup ( str : * const :: std :: os :: raw :: c_void ) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn tcfree ( ptr : * mut :: std :: os :: raw :: c_void ) ; } # [ doc = " basic utilities (for experts)" ] pub type TCCMP = :: std :: option :: Option < unsafe extern "C" fn ( aptr : * const :: std :: os :: raw :: c_char , asiz : :: std :: os :: raw :: c_int , bptr : * const :: std :: os :: raw :: c_char , bsiz : :: std :: os :: raw :: c_int , op : * mut :: std :: os :: raw :: c_void ) -> :: std :: os :: raw :: c_int > ; pub type TCCODEC = :: std :: option :: Option < unsafe extern "C" fn ( ptr : * const :: std :: os :: raw :: c_void , size : :: std :: os :: raw :: c_int , sp : * mut :: std :: os :: raw :: c_int , op : * mut :: std :: os :: raw :: c_void ) -> * mut :: std :: os :: raw :: c_void > ; pub type TCPDPROC = :: std :: option :: Option < unsafe extern "C" fn ( vbuf : * const :: std :: os :: raw :: c_void , vsiz : :: std :: os :: raw :: c_int , sp : * mut :: std :: os :: raw :: c_int , op : * mut :: std :: os :: raw :: c_void ) -> * mut :: std :: os :: raw :: c_void > ; pub type TCITER = :: std :: option :: Option < unsafe extern "C" fn ( kbuf : * const :: std :: os :: raw :: c_void , ksiz : :: std :: os :: raw :: c_int , vbuf : * const :: std :: os :: raw :: c_void , vsiz : :: std :: os :: raw :: c_int , op : * mut :: std :: os :: raw :: c_void ) -> bool > ; # [ doc = " extensible string" ] # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct TCXSTR { pub ptr : * mut :: std :: os :: raw :: c_char , pub size : :: std :: os :: raw :: c_int , pub asize : :: std :: os :: raw :: c_int , } # [ test ] fn bindgen_test_layout_TCXSTR ( ) { assert_eq ! ( :: std :: mem :: size_of :: < TCXSTR > ( ) , 16usize , concat ! ( "Size of: " , stringify ! ( TCXSTR ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < TCXSTR > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( TCXSTR ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < TCXSTR > ( ) ) ) . ptr as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( TCXSTR ) , "::" , stringify ! ( ptr ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < TCXSTR > ( ) ) ) . size as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( TCXSTR ) , "::" , stringify ! ( size ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < TCXSTR > ( ) ) ) . asize as * const _ as usize } , 12usize , concat ! ( "Offset of field: " , stringify ! ( TCXSTR ) , "::" , stringify ! ( asize ) ) ) ; } extern "C" { pub fn tcxstrnew ( ) -> * mut TCXSTR ; } extern "C" { pub fn tcxstrnew2 ( str : * const :: std :: os :: raw :: c_char ) -> * mut TCXSTR ; } extern "C" { pub fn tcxstrnew3 ( asiz : :: std :: os :: raw :: c_int ) -> * mut TCXSTR ; } extern "C" { pub fn tcxstrdup ( xstr : * const TCXSTR ) -> * mut TCXSTR ; } extern "C" { pub fn tcxstrdel ( xstr : * mut TCXSTR ) ; } extern "C" { pub fn tcxstrcat ( xstr : * mut TCXSTR , ptr : * const :: std :: os :: raw :: c_void , size : :: std :: os :: raw :: c_int ) ; } extern "C" { pub fn tcxstrcat2 ( xstr : * mut TCXSTR , str : * const :: std :: os :: raw :: c_char ) ; } extern "C" { pub fn tcxstrptr ( xstr : * const TCXSTR ) -> * const :: std :: os :: raw :: c_void ; } extern "C" { pub fn tcxstrsize ( xstr : * const TCXSTR ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn tcxstrclear ( xstr : * mut TCXSTR ) ; } extern "C" { pub fn tcxstrprintf ( xstr : * mut TCXSTR , format : * const :: std :: os :: raw :: c_char , ... ) ; } extern "C" { pub fn tcsprintf ( format : * const :: std :: os :: raw :: c_char , ... ) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { # [ doc = " extensible string (for experts)" ] pub fn tcxstrtomalloc ( xstr : * mut TCXSTR ) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn tcxstrfrommalloc ( ptr : * mut :: std :: os :: raw :: c_void , size : :: std :: os :: raw :: c_int ) -> * mut TCXSTR ; } # [ doc = " array list" ] # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct TCLISTDATUM { pub ptr : * mut :: std :: os :: raw :: c_char , pub size : :: std :: os :: raw :: c_int , } # [ test ] fn bindgen_test_layout_TCLISTDATUM ( ) { assert_eq ! ( :: std :: mem :: size_of :: < TCLISTDATUM > ( ) , 16usize , concat ! ( "Size of: " , stringify ! ( TCLISTDATUM ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < TCLISTDATUM > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( TCLISTDATUM ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < TCLISTDATUM > ( ) ) ) . ptr as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( TCLISTDATUM ) , "::" , stringify ! ( ptr ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < TCLISTDATUM > ( ) ) ) . size as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( TCLISTDATUM ) , "::" , stringify ! ( size ) ) ) ; } # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct TCLIST { pub array : * mut TCLISTDATUM , pub anum : :: std :: os :: raw :: c_int , pub start : :: std :: os :: raw :: c_int , pub num : :: std :: os :: raw :: c_int , } # [ test ] fn bindgen_test_layout_TCLIST ( ) { assert_eq ! ( :: std :: mem :: size_of :: < TCLIST > ( ) , 24usize , concat ! ( "Size of: " , stringify ! ( TCLIST ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < TCLIST > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( TCLIST ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < TCLIST > ( ) ) ) . array as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( TCLIST ) , "::" , stringify ! ( array ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < TCLIST > ( ) ) ) . anum as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( TCLIST ) , "::" , stringify ! ( anum ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < TCLIST > ( ) ) ) . start as * const _ as usize } , 12usize , concat ! ( "Offset of field: " , stringify ! ( TCLIST ) , "::" , stringify ! ( start ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < TCLIST > ( ) ) ) . num as * const _ as usize } , 16usize , concat ! ( "Offset of field: " , stringify ! ( TCLIST ) , "::" , stringify ! ( num ) ) ) ; } extern "C" { pub fn tclistnew ( ) -> * mut TCLIST ; } extern "C" { pub fn tclistnew2 ( anum : :: std :: os :: raw :: c_int ) -> * mut TCLIST ; } extern "C" { pub fn tclistnew3 ( str : * const :: std :: os :: raw :: c_char , ... ) -> * mut TCLIST ; } extern "C" { pub fn tclistdup ( list : * const TCLIST ) -> * mut TCLIST ; } extern "C" { pub fn tclistdel ( list : * mut TCLIST ) ; } extern "C" { pub fn tclistnum ( list : * const TCLIST ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn tclistval ( list : * const TCLIST , index : :: std :: os :: raw :: c_int , sp : * mut :: std :: os :: raw :: c_int ) -> * const :: std :: os :: raw :: c_void ; } extern "C" { pub fn tclistval2 ( list : * const TCLIST , index : :: std :: os :: raw :: c_int ) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn tclistpush ( list : * mut TCLIST , ptr : * const :: std :: os :: raw :: c_void , size : :: std :: os :: raw :: c_int ) ; } extern "C" { pub fn tclistpush2 ( list : * mut TCLIST , str : * const :: std :: os :: raw :: c_char ) ; } extern "C" { pub fn tclistpop ( list : * mut TCLIST , sp : * mut :: std :: os :: raw :: c_int ) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn tclistpop2 ( list : * mut TCLIST ) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn tclistunshift ( list : * mut TCLIST , ptr : * const :: std :: os :: raw :: c_void , size : :: std :: os :: raw :: c_int ) ; } extern "C" { pub fn tclistunshift2 ( list : * mut TCLIST , str : * const :: std :: os :: raw :: c_char ) ; } extern "C" { pub fn tclistshift ( list : * mut TCLIST , sp : * mut :: std :: os :: raw :: c_int ) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn tclistshift2 ( list : * mut TCLIST ) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn tclistinsert ( list : * mut TCLIST , index : :: std :: os :: raw :: c_int , ptr : * const :: std :: os :: raw :: c_void , size : :: std :: os :: raw :: c_int ) ; } extern "C" { pub fn tclistinsert2 ( list : * mut TCLIST , index : :: std :: os :: raw :: c_int , str : * const :: std :: os :: raw :: c_char ) ; } extern "C" { pub fn tclistremove ( list : * mut TCLIST , index : :: std :: os :: raw :: c_int , sp : * mut :: std :: os :: raw :: c_int ) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn tclistremove2 ( list : * mut TCLIST , index : :: std :: os :: raw :: c_int ) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn tclistover ( list : * mut TCLIST , index : :: std :: os :: raw :: c_int , ptr : * const :: std :: os :: raw :: c_void , size : :: std :: os :: raw :: c_int ) ; } extern "C" { pub fn tclistover2 ( list : * mut TCLIST , index : :: std :: os :: raw :: c_int , str : * const :: std :: os :: raw :: c_char ) ; } extern "C" { pub fn tclistsort ( list : * mut TCLIST ) ; } extern "C" { pub fn tclistlsearch ( list : * const TCLIST , ptr : * const :: std :: os :: raw :: c_void , size : :: std :: os :: raw :: c_int ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn tclistbsearch ( list : * const TCLIST , ptr : * const :: std :: os :: raw :: c_void , size : :: std :: os :: raw :: c_int ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn tclistclear ( list : * mut TCLIST ) ; } extern "C" { pub fn tclistdump ( list : * const TCLIST , sp : * mut :: std :: os :: raw :: c_int ) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn tclistload ( ptr : * const :: std :: os :: raw :: c_void , size : :: std :: os :: raw :: c_int ) -> * mut TCLIST ; } extern "C" { # [ doc = " array list (for experts)" ] pub fn tclistpushmalloc ( list : * mut TCLIST , ptr : * mut :: std :: os :: raw :: c_void , size : :: std :: os :: raw :: c_int ) ; } extern "C" { pub fn tclistsortci ( list : * mut TCLIST ) ; } extern "C" { pub fn tclistsortex ( list : * mut TCLIST , cmp : :: std :: option :: Option < unsafe extern "C" fn ( arg1 : * const TCLISTDATUM , arg2 : * const TCLISTDATUM ) -> :: std :: os :: raw :: c_int > ) ; } extern "C" { pub fn tclistinvert ( list : * mut TCLIST ) ; } extern "C" { pub fn tclistprintf ( list : * mut TCLIST , format : * const :: std :: os :: raw :: c_char , ... ) ; } # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct _TCMAPREC { pub ksiz : i32 , pub vsiz : i32 , pub left : * mut _TCMAPREC , pub right : * mut _TCMAPREC , pub prev : * mut _TCMAPREC , pub next : * mut _TCMAPREC , } # [ test ] fn bindgen_test_layout__TCMAPREC ( ) { assert_eq ! ( :: std :: mem :: size_of :: < _TCMAPREC > ( ) , 40usize , concat ! ( "Size of: " , stringify ! ( _TCMAPREC ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < _TCMAPREC > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( _TCMAPREC ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _TCMAPREC > ( ) ) ) . ksiz as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( _TCMAPREC ) , "::" , stringify ! ( ksiz ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _TCMAPREC > ( ) ) ) . vsiz as * const _ as usize } , 4usize , concat ! ( "Offset of field: " , stringify ! ( _TCMAPREC ) , "::" , stringify ! ( vsiz ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _TCMAPREC > ( ) ) ) . left as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( _TCMAPREC ) , "::" , stringify ! ( left ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _TCMAPREC > ( ) ) ) . right as * const _ as usize } , 16usize , concat ! ( "Offset of field: " , stringify ! ( _TCMAPREC ) , "::" , stringify ! ( right ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _TCMAPREC > ( ) ) ) . prev as * const _ as usize } , 24usize , concat ! ( "Offset of field: " , stringify ! ( _TCMAPREC ) , "::" , stringify ! ( prev ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _TCMAPREC > ( ) ) ) . next as * const _ as usize } , 32usize , concat ! ( "Offset of field: " , stringify ! ( _TCMAPREC ) , "::" , stringify ! ( next ) ) ) ; } pub type TCMAPREC = _TCMAPREC ; # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct TCMAP { pub buckets : * mut * mut TCMAPREC , pub first : * mut TCMAPREC , pub last : * mut TCMAPREC , pub cur : * mut TCMAPREC , pub bnum : u32 , pub rnum : u64 , pub msiz : u64 , } # [ test ] fn bindgen_test_layout_TCMAP ( ) { assert_eq ! ( :: std :: mem :: size_of :: < TCMAP > ( ) , 56usize , concat ! ( "Size of: " , stringify ! ( TCMAP ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < TCMAP > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( TCMAP ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < TCMAP > ( ) ) ) . buckets as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( TCMAP ) , "::" , stringify ! ( buckets ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < TCMAP > ( ) ) ) . first as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( TCMAP ) , "::" , stringify ! ( first ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < TCMAP > ( ) ) ) . last as * const _ as usize } , 16usize , concat ! ( "Offset of field: " , stringify ! ( TCMAP ) , "::" , stringify ! ( last ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < TCMAP > ( ) ) ) . cur as * const _ as usize } , 24usize , concat ! ( "Offset of field: " , stringify ! ( TCMAP ) , "::" , stringify ! ( cur ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < TCMAP > ( ) ) ) . bnum as * const _ as usize } , 32usize , concat ! ( "Offset of field: " , stringify ! ( TCMAP ) , "::" , stringify ! ( bnum ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < TCMAP > ( ) ) ) . rnum as * const _ as usize } , 40usize , concat ! ( "Offset of field: " , stringify ! ( TCMAP ) , "::" , stringify ! ( rnum ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < TCMAP > ( ) ) ) . msiz as * const _ as usize } , 48usize , concat ! ( "Offset of field: " , stringify ! ( TCMAP ) , "::" , stringify ! ( msiz ) ) ) ; } extern "C" { pub fn tcmapnew ( ) -> * mut TCMAP ; } extern "C" { pub fn tcmapnew2 ( bnum : u32 ) -> * mut TCMAP ; } extern "C" { pub fn tcmapnew3 ( str : * const :: std :: os :: raw :: c_char , ... ) -> * mut TCMAP ; } extern "C" { pub fn tcmapdup ( map : * const TCMAP ) -> * mut TCMAP ; } extern "C" { pub fn tcmapdel ( map : * mut TCMAP ) ; } extern "C" { pub fn tcmapput ( map : * mut TCMAP , kbuf : * const :: std :: os :: raw :: c_void , ksiz : :: std :: os :: raw :: c_int , vbuf : * const :: std :: os :: raw :: c_void , vsiz : :: std :: os :: raw :: c_int ) ; } extern "C" { pub fn tcmapput2 ( map : * mut TCMAP , kstr : * const :: std :: os :: raw :: c_char , vstr : * const :: std :: os :: raw :: c_char ) ; } extern "C" { pub fn tcmapputkeep ( map : * mut TCMAP , kbuf : * const :: std :: os :: raw :: c_void , ksiz : :: std :: os :: raw :: c_int , vbuf : * const :: std :: os :: raw :: c_void , vsiz : :: std :: os :: raw :: c_int ) -> bool ; } extern "C" { pub fn tcmapputkeep2 ( map : * mut TCMAP , kstr : * const :: std :: os :: raw :: c_char , vstr : * const :: std :: os :: raw :: c_char ) -> bool ; } extern "C" { pub fn tcmapputcat ( map : * mut TCMAP , kbuf : * const :: std :: os :: raw :: c_void , ksiz : :: std :: os :: raw :: c_int , vbuf : * const :: std :: os :: raw :: c_void , vsiz : :: std :: os :: raw :: c_int ) ; } extern "C" { pub fn tcmapputcat2 ( map : * mut TCMAP , kstr : * const :: std :: os :: raw :: c_char , vstr : * const :: std :: os :: raw :: c_char ) ; } extern "C" { pub fn tcmapout ( map : * mut TCMAP , kbuf : * const :: std :: os :: raw :: c_void , ksiz : :: std :: os :: raw :: c_int ) -> bool ; } extern "C" { pub fn tcmapout2 ( map : * mut TCMAP , kstr : * const :: std :: os :: raw :: c_char ) -> bool ; } extern "C" { pub fn tcmapget ( map : * const TCMAP , kbuf : * const :: std :: os :: raw :: c_void , ksiz : :: std :: os :: raw :: c_int , sp : * mut :: std :: os :: raw :: c_int ) -> * const :: std :: os :: raw :: c_void ; } extern "C" { pub fn tcmapget2 ( map : * const TCMAP , kstr : * const :: std :: os :: raw :: c_char ) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn tcmapmove ( map : * mut TCMAP , kbuf : * const :: std :: os :: raw :: c_void , ksiz : :: std :: os :: raw :: c_int , head : bool ) -> bool ; } extern "C" { pub fn tcmapmove2 ( map : * mut TCMAP , kstr : * const :: std :: os :: raw :: c_char , head : bool ) -> bool ; } extern "C" { pub fn tcmapiterinit ( map : * mut TCMAP ) ; } extern "C" { pub fn tcmapiternext ( map : * mut TCMAP , sp : * mut :: std :: os :: raw :: c_int ) -> * const :: std :: os :: raw :: c_void ; } extern "C" { pub fn tcmapiternext2 ( map : * mut TCMAP ) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn tcmaprnum ( map : * const TCMAP ) -> u64 ; } extern "C" { pub fn tcmapmsiz ( map : * const TCMAP ) -> u64 ; } extern "C" { pub fn tcmapkeys ( map : * const TCMAP ) -> * mut TCLIST ; } extern "C" { pub fn tcmapvals ( map : * const TCMAP ) -> * mut TCLIST ; } extern "C" { pub fn tcmapaddint ( map : * mut TCMAP , kbuf : * const :: std :: os :: raw :: c_void , ksiz : :: std :: os :: raw :: c_int , num : :: std :: os :: raw :: c_int ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn tcmapadddouble ( map : * mut TCMAP , kbuf : * const :: std :: os :: raw :: c_void , ksiz : :: std :: os :: raw :: c_int , num : f64 ) -> f64 ; } extern "C" { pub fn tcmapclear ( map : * mut TCMAP ) ; } extern "C" { pub fn tcmapcutfront ( map : * mut TCMAP , num : :: std :: os :: raw :: c_int ) ; } extern "C" { pub fn tcmapdump ( map : * const TCMAP , sp : * mut :: std :: os :: raw :: c_int ) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn tcmapload ( ptr : * const :: std :: os :: raw :: c_void , size : :: std :: os :: raw :: c_int ) -> * mut TCMAP ; } extern "C" { # [ doc = " hash map (for experts)" ] pub fn tcmapput3 ( map : * mut TCMAP , kbuf : * const :: std :: os :: raw :: c_void , ksiz : :: std :: os :: raw :: c_int , vbuf : * const :: std :: os :: raw :: c_char , vsiz : :: std :: os :: raw :: c_int ) ; } extern "C" { pub fn tcmapput4 ( map : * mut TCMAP , kbuf : * const :: std :: os :: raw :: c_void , ksiz : :: std :: os :: raw :: c_int , fvbuf : * const :: std :: os :: raw :: c_void , fvsiz : :: std :: os :: raw :: c_int , lvbuf : * const :: std :: os :: raw :: c_void , lvsiz : :: std :: os :: raw :: c_int ) ; } extern "C" { pub fn tcmapputcat3 ( map : * mut TCMAP , kbuf : * const :: std :: os :: raw :: c_void , ksiz : :: std :: os :: raw :: c_int , vbuf : * const :: std :: os :: raw :: c_void , vsiz : :: std :: os :: raw :: c_int ) ; } extern "C" { pub fn tcmapputproc ( map : * mut TCMAP , kbuf : * const :: std :: os :: raw :: c_void , ksiz : :: std :: os :: raw :: c_int , vbuf : * const :: std :: os :: raw :: c_void , vsiz : :: std :: os :: raw :: c_int , proc_ : TCPDPROC , op : * mut :: std :: os :: raw :: c_void ) -> bool ; } extern "C" { pub fn tcmapget3 ( map : * mut TCMAP , kbuf : * const :: std :: os :: raw :: c_void , ksiz : :: std :: os :: raw :: c_int , sp : * mut :: std :: os :: raw :: c_int ) -> * const :: std :: os :: raw :: c_void ; } extern "C" { pub fn tcmapget4 ( map : * mut TCMAP , kstr : * const :: std :: os :: raw :: c_char , dstr : * const :: std :: os :: raw :: c_char ) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn tcmapiterinit2 ( map : * mut TCMAP , kbuf : * const :: std :: os :: raw :: c_void , ksiz : :: std :: os :: raw :: c_int ) ; } extern "C" { pub fn tcmapiterinit3 ( map : * mut TCMAP , kstr : * const :: std :: os :: raw :: c_char ) ; } extern "C" { pub fn tcmapiterval ( kbuf : * const :: std :: os :: raw :: c_void , sp : * mut :: std :: os :: raw :: c_int ) -> * const :: std :: os :: raw :: c_void ; } extern "C" { pub fn tcmapiterval2 ( kstr : * const :: std :: os :: raw :: c_char ) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn tcmapkeys2 ( map : * const TCMAP , np : * mut :: std :: os :: raw :: c_int ) -> * mut * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn tcmapvals2 ( map : * const TCMAP , np : * mut :: std :: os :: raw :: c_int ) -> * mut * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn tcmaploadone ( ptr : * const :: std :: os :: raw :: c_void , size : :: std :: os :: raw :: c_int , kbuf : * const :: std :: os :: raw :: c_void , ksiz : :: std :: os :: raw :: c_int , sp : * mut :: std :: os :: raw :: c_int ) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn tcmaploadoneintoxstr ( ptr : * const :: std :: os :: raw :: c_void , size : :: std :: os :: raw :: c_int , kbuf : * const :: std :: os :: raw :: c_void , ksiz : :: std :: os :: raw :: c_int , xstr : * mut TCXSTR ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn tcmapprintf ( map : * mut TCMAP , kstr : * const :: std :: os :: raw :: c_char , format : * const :: std :: os :: raw :: c_char , ... ) ; } # [ doc = " ordered tree" ] # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct _TCTREEREC { pub ksiz : i32 , pub vsiz : i32 , pub left : * mut _TCTREEREC , pub right : * mut _TCTREEREC , } # [ test ] fn bindgen_test_layout__TCTREEREC ( ) { assert_eq ! ( :: std :: mem :: size_of :: < _TCTREEREC > ( ) , 24usize , concat ! ( "Size of: " , stringify ! ( _TCTREEREC ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < _TCTREEREC > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( _TCTREEREC ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _TCTREEREC > ( ) ) ) . ksiz as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( _TCTREEREC ) , "::" , stringify ! ( ksiz ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _TCTREEREC > ( ) ) ) . vsiz as * const _ as usize } , 4usize , concat ! ( "Offset of field: " , stringify ! ( _TCTREEREC ) , "::" , stringify ! ( vsiz ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _TCTREEREC > ( ) ) ) . left as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( _TCTREEREC ) , "::" , stringify ! ( left ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _TCTREEREC > ( ) ) ) . right as * const _ as usize } , 16usize , concat ! ( "Offset of field: " , stringify ! ( _TCTREEREC ) , "::" , stringify ! ( right ) ) ) ; } pub type TCTREEREC = _TCTREEREC ; # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct TCTREE { pub root : * mut TCTREEREC , pub cur : * mut TCTREEREC , pub rnum : u64 , pub msiz : u64 , pub cmp : TCCMP , pub cmpop : * mut :: std :: os :: raw :: c_void , } # [ test ] fn bindgen_test_layout_TCTREE ( ) { assert_eq ! ( :: std :: mem :: size_of :: < TCTREE > ( ) , 48usize , concat ! ( "Size of: " , stringify ! ( TCTREE ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < TCTREE > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( TCTREE ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < TCTREE > ( ) ) ) . root as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( TCTREE ) , "::" , stringify ! ( root ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < TCTREE > ( ) ) ) . cur as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( TCTREE ) , "::" , stringify ! ( cur ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < TCTREE > ( ) ) ) . rnum as * const _ as usize } , 16usize , concat ! ( "Offset of field: " , stringify ! ( TCTREE ) , "::" , stringify ! ( rnum ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < TCTREE > ( ) ) ) . msiz as * const _ as usize } , 24usize , concat ! ( "Offset of field: " , stringify ! ( TCTREE ) , "::" , stringify ! ( msiz ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < TCTREE > ( ) ) ) . cmp as * const _ as usize } , 32usize , concat ! ( "Offset of field: " , stringify ! ( TCTREE ) , "::" , stringify ! ( cmp ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < TCTREE > ( ) ) ) . cmpop as * const _ as usize } , 40usize , concat ! ( "Offset of field: " , stringify ! ( TCTREE ) , "::" , stringify ! ( cmpop ) ) ) ; } extern "C" { pub fn tctreenew ( ) -> * mut TCTREE ; } extern "C" { pub fn tctreenew2 ( cmp : TCCMP , cmpop : * mut :: std :: os :: raw :: c_void ) -> * mut TCTREE ; } extern "C" { pub fn tctreedup ( tree : * const TCTREE ) -> * mut TCTREE ; } extern "C" { pub fn tctreedel ( tree : * mut TCTREE ) ; } extern "C" { pub fn tctreeput ( tree : * mut TCTREE , kbuf : * const :: std :: os :: raw :: c_void , ksiz : :: std :: os :: raw :: c_int , vbuf : * const :: std :: os :: raw :: c_void , vsiz : :: std :: os :: raw :: c_int ) ; } extern "C" { pub fn tctreeput2 ( tree : * mut TCTREE , kstr : * const :: std :: os :: raw :: c_char , vstr : * const :: std :: os :: raw :: c_char ) ; } extern "C" { pub fn tctreeputkeep ( tree : * mut TCTREE , kbuf : * const :: std :: os :: raw :: c_void , ksiz : :: std :: os :: raw :: c_int , vbuf : * const :: std :: os :: raw :: c_void , vsiz : :: std :: os :: raw :: c_int ) -> bool ; } extern "C" { pub fn tctreeputkeep2 ( tree : * mut TCTREE , kstr : * const :: std :: os :: raw :: c_char , vstr : * const :: std :: os :: raw :: c_char ) -> bool ; } extern "C" { pub fn tctreeputcat ( tree : * mut TCTREE , kbuf : * const :: std :: os :: raw :: c_void , ksiz : :: std :: os :: raw :: c_int , vbuf : * const :: std :: os :: raw :: c_void , vsiz : :: std :: os :: raw :: c_int ) ; } extern "C" { pub fn tctreeputcat2 ( tree : * mut TCTREE , kstr : * const :: std :: os :: raw :: c_char , vstr : * const :: std :: os :: raw :: c_char ) ; } extern "C" { pub fn tctreeputproc ( tree : * mut TCTREE , kbuf : * const :: std :: os :: raw :: c_void , ksiz : :: std :: os :: raw :: c_int , vbuf : * const :: std :: os :: raw :: c_void , vsiz : :: std :: os :: raw :: c_int , proc_ : TCPDPROC , op : * mut :: std :: os :: raw :: c_void ) -> bool ; } extern "C" { pub fn tctreeout ( tree : * mut TCTREE , kbuf : * const :: std :: os :: raw :: c_void , ksiz : :: std :: os :: raw :: c_int ) -> bool ; } extern "C" { pub fn tctreeout2 ( tree : * mut TCTREE , kstr : * const :: std :: os :: raw :: c_char ) -> bool ; } extern "C" { pub fn tctreeget ( tree : * mut TCTREE , kbuf : * const :: std :: os :: raw :: c_void , ksiz : :: std :: os :: raw :: c_int , sp : * mut :: std :: os :: raw :: c_int ) -> * const :: std :: os :: raw :: c_void ; } extern "C" { pub fn tctreeget2 ( tree : * mut TCTREE , kstr : * const :: std :: os :: raw :: c_char ) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn tctreeiterinit ( tree : * mut TCTREE ) ; } extern "C" { pub fn tctreeiternext ( tree : * mut TCTREE , sp : * mut :: std :: os :: raw :: c_int ) -> * const :: std :: os :: raw :: c_void ; } extern "C" { pub fn tctreeiternext2 ( tree : * mut TCTREE ) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn tctreernum ( tree : * const TCTREE ) -> u64 ; } extern "C" { pub fn tctreemsiz ( tree : * const TCTREE ) -> u64 ; } extern "C" { pub fn tctreekeys ( tree : * const TCTREE ) -> * mut TCLIST ; } extern "C" { pub fn tctreevals ( tree : * const TCTREE ) -> * mut TCLIST ; } extern "C" { pub fn tctreeaddint ( tree : * mut TCTREE , kbuf : * const :: std :: os :: raw :: c_void , ksiz : :: std :: os :: raw :: c_int , num : :: std :: os :: raw :: c_int ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn tctreeadddouble ( tree : * mut TCTREE , kbuf : * const :: std :: os :: raw :: c_void , ksiz : :: std :: os :: raw :: c_int , num : f64 ) -> f64 ; } extern "C" { pub fn tctreeclear ( tree : * mut TCTREE ) ; } extern "C" { pub fn tctreecutfringe ( tree : * mut TCTREE , num : :: std :: os :: raw :: c_int ) ; } extern "C" { pub fn tctreedump ( tree : * const TCTREE , sp : * mut :: std :: os :: raw :: c_int ) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn tctreeload ( ptr : * const :: std :: os :: raw :: c_void , size : :: std :: os :: raw :: c_int , cmp : TCCMP , cmpop : * mut :: std :: os :: raw :: c_void ) -> * mut TCTREE ; } extern "C" { # [ doc = " ordered tree (for experts)" ] pub fn tctreeput3 ( tree : * mut TCTREE , kbuf : * const :: std :: os :: raw :: c_void , ksiz : :: std :: os :: raw :: c_int , vbuf : * const :: std :: os :: raw :: c_void , vsiz : :: std :: os :: raw :: c_int ) ; } extern "C" { pub fn tctreeputkeep3 ( tree : * mut TCTREE , kbuf : * const :: std :: os :: raw :: c_void , ksiz : :: std :: os :: raw :: c_int , vbuf : * const :: std :: os :: raw :: c_void , vsiz : :: std :: os :: raw :: c_int ) -> bool ; } extern "C" { pub fn tctreeputcat3 ( tree : * mut TCTREE , kbuf : * const :: std :: os :: raw :: c_void , ksiz : :: std :: os :: raw :: c_int , vbuf : * const :: std :: os :: raw :: c_void , vsiz : :: std :: os :: raw :: c_int ) ; } extern "C" { pub fn tctreeget3 ( tree : * const TCTREE , kbuf : * const :: std :: os :: raw :: c_void , ksiz : :: std :: os :: raw :: c_int , sp : * mut :: std :: os :: raw :: c_int ) -> * const :: std :: os :: raw :: c_void ; } extern "C" { pub fn tctreeget4 ( tree : * mut TCTREE , kstr : * const :: std :: os :: raw :: c_char , dstr : * const :: std :: os :: raw :: c_char ) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn tctreeiterinit2 ( tree : * mut TCTREE , kbuf : * const :: std :: os :: raw :: c_void , ksiz : :: std :: os :: raw :: c_int ) ; } extern "C" { pub fn tctreeiterinit3 ( tree : * mut TCTREE , kstr : * const :: std :: os :: raw :: c_char ) ; } extern "C" { pub fn tctreeiterval ( kbuf : * const :: std :: os :: raw :: c_void , sp : * mut :: std :: os :: raw :: c_int ) -> * const :: std :: os :: raw :: c_void ; } extern "C" { pub fn tctreeiterval2 ( kstr : * const :: std :: os :: raw :: c_char ) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn tctreekeys2 ( tree : * const TCTREE , np : * mut :: std :: os :: raw :: c_int ) -> * mut * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn tctreevals2 ( tree : * const TCTREE , np : * mut :: std :: os :: raw :: c_int ) -> * mut * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn tctreeloadone ( ptr : * const :: std :: os :: raw :: c_void , size : :: std :: os :: raw :: c_int , kbuf : * const :: std :: os :: raw :: c_void , ksiz : :: std :: os :: raw :: c_int , sp : * mut :: std :: os :: raw :: c_int ) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn tctreeprintf ( tree : * mut TCTREE , kstr : * const :: std :: os :: raw :: c_char , format : * const :: std :: os :: raw :: c_char , ... ) ; } # [ doc = " on-memory hash database" ] # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct TCMDB { pub mmtxs : * mut * mut :: std :: os :: raw :: c_void , pub imtx : * mut :: std :: os :: raw :: c_void , pub maps : * mut * mut TCMAP , pub iter : :: std :: os :: raw :: c_int , } # [ test ] fn bindgen_test_layout_TCMDB ( ) { assert_eq ! ( :: std :: mem :: size_of :: < TCMDB > ( ) , 32usize , concat ! ( "Size of: " , stringify ! ( TCMDB ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < TCMDB > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( TCMDB ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < TCMDB > ( ) ) ) . mmtxs as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( TCMDB ) , "::" , stringify ! ( mmtxs ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < TCMDB > ( ) ) ) . imtx as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( TCMDB ) , "::" , stringify ! ( imtx ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < TCMDB > ( ) ) ) . maps as * const _ as usize } , 16usize , concat ! ( "Offset of field: " , stringify ! ( TCMDB ) , "::" , stringify ! ( maps ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < TCMDB > ( ) ) ) . iter as * const _ as usize } , 24usize , concat ! ( "Offset of field: " , stringify ! ( TCMDB ) , "::" , stringify ! ( iter ) ) ) ; } extern "C" { pub fn tcmdbnew ( ) -> * mut TCMDB ; } extern "C" { pub fn tcmdbnew2 ( bnum : u32 ) -> * mut TCMDB ; } extern "C" { pub fn tcmdbdel ( mdb : * mut TCMDB ) ; } extern "C" { pub fn tcmdbput ( mdb : * mut TCMDB , kbuf : * const :: std :: os :: raw :: c_void , ksiz : :: std :: os :: raw :: c_int , vbuf : * const :: std :: os :: raw :: c_void , vsiz : :: std :: os :: raw :: c_int ) ; } extern "C" { pub fn tcmdbput2 ( mdb : * mut TCMDB , kstr : * const :: std :: os :: raw :: c_char , vstr : * const :: std :: os :: raw :: c_char ) ; } extern "C" { pub fn tcmdbputkeep ( mdb : * mut TCMDB , kbuf : * const :: std :: os :: raw :: c_void , ksiz : :: std :: os :: raw :: c_int , vbuf : * const :: std :: os :: raw :: c_void , vsiz : :: std :: os :: raw :: c_int ) -> bool ; } extern "C" { pub fn tcmdbputkeep2 ( mdb : * mut TCMDB , kstr : * const :: std :: os :: raw :: c_char , vstr : * const :: std :: os :: raw :: c_char ) -> bool ; } extern "C" { pub fn tcmdbputcat ( mdb : * mut TCMDB , kbuf : * const :: std :: os :: raw :: c_void , ksiz : :: std :: os :: raw :: c_int , vbuf : * const :: std :: os :: raw :: c_void , vsiz : :: std :: os :: raw :: c_int ) ; } extern "C" { pub fn tcmdbputcat2 ( mdb : * mut TCMDB , kstr : * const :: std :: os :: raw :: c_char , vstr : * const :: std :: os :: raw :: c_char ) ; } extern "C" { pub fn tcmdbout ( mdb : * mut TCMDB , kbuf : * const :: std :: os :: raw :: c_void , ksiz : :: std :: os :: raw :: c_int ) -> bool ; } extern "C" { pub fn tcmdbout2 ( mdb : * mut TCMDB , kstr : * const :: std :: os :: raw :: c_char ) -> bool ; } extern "C" { pub fn tcmdbget ( mdb : * mut TCMDB , kbuf : * const :: std :: os :: raw :: c_void , ksiz : :: std :: os :: raw :: c_int , sp : * mut :: std :: os :: raw :: c_int ) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn tcmdbget2 ( mdb : * mut TCMDB , kstr : * const :: std :: os :: raw :: c_char ) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn tcmdbvsiz ( mdb : * mut TCMDB , kbuf : * const :: std :: os :: raw :: c_void , ksiz : :: std :: os :: raw :: c_int ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn tcmdbvsiz2 ( mdb : * mut TCMDB , kstr : * const :: std :: os :: raw :: c_char ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn tcmdbiterinit ( mdb : * mut TCMDB ) ; } extern "C" { pub fn tcmdbiternext ( mdb : * mut TCMDB , sp : * mut :: std :: os :: raw :: c_int ) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn tcmdbiternext2 ( mdb : * mut TCMDB ) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn tcmdbfwmkeys ( mdb : * mut TCMDB , pbuf : * const :: std :: os :: raw :: c_void , psiz : :: std :: os :: raw :: c_int , max : :: std :: os :: raw :: c_int ) -> * mut TCLIST ; } extern "C" { pub fn tcmdbfwmkeys2 ( mdb : * mut TCMDB , pstr : * const :: std :: os :: raw :: c_char , max : :: std :: os :: raw :: c_int ) -> * mut TCLIST ; } extern "C" { pub fn tcmdbrnum ( mdb : * mut TCMDB ) -> u64 ; } extern "C" { pub fn tcmdbmsiz ( mdb : * mut TCMDB ) -> u64 ; } extern "C" { pub fn tcmdbaddint ( mdb : * mut TCMDB , kbuf : * const :: std :: os :: raw :: c_void , ksiz : :: std :: os :: raw :: c_int , num : :: std :: os :: raw :: c_int ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn tcmdbadddouble ( mdb : * mut TCMDB , kbuf : * const :: std :: os :: raw :: c_void , ksiz : :: std :: os :: raw :: c_int , num : f64 ) -> f64 ; } extern "C" { pub fn tcmdbvanish ( mdb : * mut TCMDB ) ; } extern "C" { pub fn tcmdbcutfront ( mdb : * mut TCMDB , num : :: std :: os :: raw :: c_int ) ; } extern "C" { # [ doc = " on-memory hash database (for experts)" ] pub fn tcmdbput3 ( mdb : * mut TCMDB , kbuf : * const :: std :: os :: raw :: c_void , ksiz : :: std :: os :: raw :: c_int , vbuf : * const :: std :: os :: raw :: c_char , vsiz : :: std :: os :: raw :: c_int ) ; } extern "C" { pub fn tcmdbput4 ( mdb : * mut TCMDB , kbuf : * const :: std :: os :: raw :: c_void , ksiz : :: std :: os :: raw :: c_int , fvbuf : * const :: std :: os :: raw :: c_void , fvsiz : :: std :: os :: raw :: c_int , lvbuf : * const :: std :: os :: raw :: c_void , lvsiz : :: std :: os :: raw :: c_int ) ; } extern "C" { pub fn tcmdbputcat3 ( mdb : * mut TCMDB , kbuf : * const :: std :: os :: raw :: c_void , ksiz : :: std :: os :: raw :: c_int , vbuf : * const :: std :: os :: raw :: c_void , vsiz : :: std :: os :: raw :: c_int ) ; } extern "C" { pub fn tcmdbputproc ( mdb : * mut TCMDB , kbuf : * const :: std :: os :: raw :: c_void , ksiz : :: std :: os :: raw :: c_int , vbuf : * const :: std :: os :: raw :: c_void , vsiz : :: std :: os :: raw :: c_int , proc_ : TCPDPROC , op : * mut :: std :: os :: raw :: c_void ) -> bool ; } extern "C" { pub fn tcmdbget3 ( mdb : * mut TCMDB , kbuf : * const :: std :: os :: raw :: c_void , ksiz : :: std :: os :: raw :: c_int , sp : * mut :: std :: os :: raw :: c_int ) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn tcmdbiterinit2 ( mdb : * mut TCMDB , kbuf : * const :: std :: os :: raw :: c_void , ksiz : :: std :: os :: raw :: c_int ) ; } extern "C" { pub fn tcmdbiterinit3 ( mdb : * mut TCMDB , kstr : * const :: std :: os :: raw :: c_char ) ; } extern "C" { pub fn tcmdbforeach ( mdb : * mut TCMDB , iter : TCITER , op : * mut :: std :: os :: raw :: c_void ) ; } # [ doc = " on-memory tree database" ] # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct TCNDB { pub mmtx : * mut :: std :: os :: raw :: c_void , pub tree : * mut TCTREE , } # [ test ] fn bindgen_test_layout_TCNDB ( ) { assert_eq ! ( :: std :: mem :: size_of :: < TCNDB > ( ) , 16usize , concat ! ( "Size of: " , stringify ! ( TCNDB ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < TCNDB > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( TCNDB ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < TCNDB > ( ) ) ) . mmtx as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( TCNDB ) , "::" , stringify ! ( mmtx ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < TCNDB > ( ) ) ) . tree as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( TCNDB ) , "::" , stringify ! ( tree ) ) ) ; } extern "C" { pub fn tcndbnew ( ) -> * mut TCNDB ; } extern "C" { pub fn tcndbnew2 ( cmp : TCCMP , cmpop : * mut :: std :: os :: raw :: c_void ) -> * mut TCNDB ; } extern "C" { pub fn tcndbdel ( ndb : * mut TCNDB ) ; } extern "C" { pub fn tcndbput ( ndb : * mut TCNDB , kbuf : * const :: std :: os :: raw :: c_void , ksiz : :: std :: os :: raw :: c_int , vbuf : * const :: std :: os :: raw :: c_void , vsiz : :: std :: os :: raw :: c_int ) ; } extern "C" { pub fn tcndbput2 ( ndb : * mut TCNDB , kstr : * const :: std :: os :: raw :: c_char , vstr : * const :: std :: os :: raw :: c_char ) ; } extern "C" { pub fn tcndbputkeep ( ndb : * mut TCNDB , kbuf : * const :: std :: os :: raw :: c_void , ksiz : :: std :: os :: raw :: c_int , vbuf : * const :: std :: os :: raw :: c_void , vsiz : :: std :: os :: raw :: c_int ) -> bool ; } extern "C" { pub fn tcndbputkeep2 ( ndb : * mut TCNDB , kstr : * const :: std :: os :: raw :: c_char , vstr : * const :: std :: os :: raw :: c_char ) -> bool ; } extern "C" { pub fn tcndbputcat ( ndb : * mut TCNDB , kbuf : * const :: std :: os :: raw :: c_void , ksiz : :: std :: os :: raw :: c_int , vbuf : * const :: std :: os :: raw :: c_void , vsiz : :: std :: os :: raw :: c_int ) ; } extern "C" { pub fn tcndbputcat2 ( ndb : * mut TCNDB , kstr : * const :: std :: os :: raw :: c_char , vstr : * const :: std :: os :: raw :: c_char ) ; } extern "C" { pub fn tcndbout ( ndb : * mut TCNDB , kbuf : * const :: std :: os :: raw :: c_void , ksiz : :: std :: os :: raw :: c_int ) -> bool ; } extern "C" { pub fn tcndbout2 ( ndb : * mut TCNDB , kstr : * const :: std :: os :: raw :: c_char ) -> bool ; } extern "C" { pub fn tcndbget ( ndb : * mut TCNDB , kbuf : * const :: std :: os :: raw :: c_void , ksiz : :: std :: os :: raw :: c_int , sp : * mut :: std :: os :: raw :: c_int ) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn tcndbget2 ( ndb : * mut TCNDB , kstr : * const :: std :: os :: raw :: c_char ) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn tcndbvsiz ( ndb : * mut TCNDB , kbuf : * const :: std :: os :: raw :: c_void , ksiz : :: std :: os :: raw :: c_int ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn tcndbvsiz2 ( ndb : * mut TCNDB , kstr : * const :: std :: os :: raw :: c_char ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn tcndbiterinit ( ndb : * mut TCNDB ) ; } extern "C" { pub fn tcndbiternext ( ndb : * mut TCNDB , sp : * mut :: std :: os :: raw :: c_int ) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn tcndbiternext2 ( ndb : * mut TCNDB ) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn tcndbfwmkeys ( ndb : * mut TCNDB , pbuf : * const :: std :: os :: raw :: c_void , psiz : :: std :: os :: raw :: c_int , max : :: std :: os :: raw :: c_int ) -> * mut TCLIST ; } extern "C" { pub fn tcndbfwmkeys2 ( ndb : * mut TCNDB , pstr : * const :: std :: os :: raw :: c_char , max : :: std :: os :: raw :: c_int ) -> * mut TCLIST ; } extern "C" { pub fn tcndbrnum ( ndb : * mut TCNDB ) -> u64 ; } extern "C" { pub fn tcndbmsiz ( ndb : * mut TCNDB ) -> u64 ; } extern "C" { pub fn tcndbaddint ( ndb : * mut TCNDB , kbuf : * const :: std :: os :: raw :: c_void , ksiz : :: std :: os :: raw :: c_int , num : :: std :: os :: raw :: c_int ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn tcndbadddouble ( ndb : * mut TCNDB , kbuf : * const :: std :: os :: raw :: c_void , ksiz : :: std :: os :: raw :: c_int , num : f64 ) -> f64 ; } extern "C" { pub fn tcndbvanish ( ndb : * mut TCNDB ) ; } extern "C" { pub fn tcndbcutfringe ( ndb : * mut TCNDB , num : :: std :: os :: raw :: c_int ) ; } extern "C" { # [ doc = " ordered tree (for experts)" ] pub fn tcndbput3 ( ndb : * mut TCNDB , kbuf : * const :: std :: os :: raw :: c_void , ksiz : :: std :: os :: raw :: c_int , vbuf : * const :: std :: os :: raw :: c_void , vsiz : :: std :: os :: raw :: c_int ) ; } extern "C" { pub fn tcndbputkeep3 ( ndb : * mut TCNDB , kbuf : * const :: std :: os :: raw :: c_void , ksiz : :: std :: os :: raw :: c_int , vbuf : * const :: std :: os :: raw :: c_void , vsiz : :: std :: os :: raw :: c_int ) -> bool ; } extern "C" { pub fn tcndbputcat3 ( ndb : * mut TCNDB , kbuf : * const :: std :: os :: raw :: c_void , ksiz : :: std :: os :: raw :: c_int , vbuf : * const :: std :: os :: raw :: c_void , vsiz : :: std :: os :: raw :: c_int ) ; } extern "C" { pub fn tcndbputproc ( ndb : * mut TCNDB , kbuf : * const :: std :: os :: raw :: c_void , ksiz : :: std :: os :: raw :: c_int , vbuf : * const :: std :: os :: raw :: c_void , vsiz : :: std :: os :: raw :: c_int , proc_ : TCPDPROC , op : * mut :: std :: os :: raw :: c_void ) -> bool ; } extern "C" { pub fn tcndbget3 ( ndb : * mut TCNDB , kbuf : * const :: std :: os :: raw :: c_void , ksiz : :: std :: os :: raw :: c_int , sp : * mut :: std :: os :: raw :: c_int ) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn tcndbiterinit2 ( ndb : * mut TCNDB , kbuf : * const :: std :: os :: raw :: c_void , ksiz : :: std :: os :: raw :: c_int ) ; } extern "C" { pub fn tcndbiterinit3 ( ndb : * mut TCNDB , kstr : * const :: std :: os :: raw :: c_char ) ; } extern "C" { pub fn tcndbforeach ( ndb : * mut TCNDB , iter : TCITER , op : * mut :: std :: os :: raw :: c_void ) ; } # [ doc = " memory pool" ] # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct TCMPELEM { pub ptr : * mut :: std :: os :: raw :: c_void , pub del : :: std :: option :: Option < unsafe extern "C" fn ( arg1 : * mut :: std :: os :: raw :: c_void ) > , } # [ test ] fn bindgen_test_layout_TCMPELEM ( ) { assert_eq ! ( :: std :: mem :: size_of :: < TCMPELEM > ( ) , 16usize , concat ! ( "Size of: " , stringify ! ( TCMPELEM ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < TCMPELEM > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( TCMPELEM ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < TCMPELEM > ( ) ) ) . ptr as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( TCMPELEM ) , "::" , stringify ! ( ptr ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < TCMPELEM > ( ) ) ) . del as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( TCMPELEM ) , "::" , stringify ! ( del ) ) ) ; } # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct TCMPOOL { pub mutex : * mut :: std :: os :: raw :: c_void , pub elems : * mut TCMPELEM , pub anum : :: std :: os :: raw :: c_int , pub num : :: std :: os :: raw :: c_int , } # [ test ] fn bindgen_test_layout_TCMPOOL ( ) { assert_eq ! ( :: std :: mem :: size_of :: < TCMPOOL > ( ) , 24usize , concat ! ( "Size of: " , stringify ! ( TCMPOOL ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < TCMPOOL > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( TCMPOOL ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < TCMPOOL > ( ) ) ) . mutex as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( TCMPOOL ) , "::" , stringify ! ( mutex ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < TCMPOOL > ( ) ) ) . elems as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( TCMPOOL ) , "::" , stringify ! ( elems ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < TCMPOOL > ( ) ) ) . anum as * const _ as usize } , 16usize , concat ! ( "Offset of field: " , stringify ! ( TCMPOOL ) , "::" , stringify ! ( anum ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < TCMPOOL > ( ) ) ) . num as * const _ as usize } , 20usize , concat ! ( "Offset of field: " , stringify ! ( TCMPOOL ) , "::" , stringify ! ( num ) ) ) ; } extern "C" { pub fn tcmpoolnew ( ) -> * mut TCMPOOL ; } extern "C" { pub fn tcmpooldel ( mpool : * mut TCMPOOL ) ; } extern "C" { pub fn tcmpoolpush ( mpool : * mut TCMPOOL , ptr : * mut :: std :: os :: raw :: c_void , del : :: std :: option :: Option < unsafe extern "C" fn ( arg1 : * mut :: std :: os :: raw :: c_void ) > ) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn tcmpoolpushptr ( mpool : * mut TCMPOOL , ptr : * mut :: std :: os :: raw :: c_void ) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn tcmpoolpushxstr ( mpool : * mut TCMPOOL , xstr : * mut TCXSTR ) -> * mut TCXSTR ; } extern "C" { pub fn tcmpoolpushlist ( mpool : * mut TCMPOOL , list : * mut TCLIST ) -> * mut TCLIST ; } extern "C" { pub fn tcmpoolpushmap ( mpool : * mut TCMPOOL , map : * mut TCMAP ) -> * mut TCMAP ; } extern "C" { pub fn tcmpoolpushtree ( mpool : * mut TCMPOOL , tree : * mut TCTREE ) -> * mut TCTREE ; } extern "C" { pub fn tcmpoolmalloc ( mpool : * mut TCMPOOL , size : usize ) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn tcmpoolxstrnew ( mpool : * mut TCMPOOL ) -> * mut TCXSTR ; } extern "C" { pub fn tcmpoollistnew ( mpool : * mut TCMPOOL ) -> * mut TCLIST ; } extern "C" { pub fn tcmpoolmapnew ( mpool : * mut TCMPOOL ) -> * mut TCMAP ; } extern "C" { pub fn tcmpooltreenew ( mpool : * mut TCMPOOL ) -> * mut TCTREE ; } extern "C" { pub fn tcmpoolpop ( mpool : * mut TCMPOOL , exe : bool ) ; } extern "C" { pub fn tcmpoolclear ( mpool : * mut TCMPOOL , exe : bool ) ; } extern "C" { pub fn tcmpoolglobal ( ) -> * mut TCMPOOL ; } extern "C" { # [ doc = " miscellaneous utilities" ] pub fn tclmax ( a : :: std :: os :: raw :: c_long , b : :: std :: os :: raw :: c_long ) -> :: std :: os :: raw :: c_long ; } extern "C" { pub fn tclmin ( a : :: std :: os :: raw :: c_long , b : :: std :: os :: raw :: c_long ) -> :: std :: os :: raw :: c_long ; } extern "C" { pub fn tclrand ( ) -> :: std :: os :: raw :: c_ulong ; } extern "C" { pub fn tcdrand ( ) -> f64 ; } extern "C" { pub fn tcdrandnd ( avg : f64 , sd : f64 ) -> f64 ; } extern "C" { pub fn tcstricmp ( astr : * const :: std :: os :: raw :: c_char , bstr : * const :: std :: os :: raw :: c_char ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn tcstrfwm ( str : * const :: std :: os :: raw :: c_char , key : * const :: std :: os :: raw :: c_char ) -> bool ; } extern "C" { pub fn tcstrifwm ( str : * const :: std :: os :: raw :: c_char , key : * const :: std :: os :: raw :: c_char ) -> bool ; } extern "C" { pub fn tcstrbwm ( str : * const :: std :: os :: raw :: c_char , key : * const :: std :: os :: raw :: c_char ) -> bool ; } extern "C" { pub fn tcstribwm ( str : * const :: std :: os :: raw :: c_char , key : * const :: std :: os :: raw :: c_char ) -> bool ; } extern "C" { pub fn tcstrdist ( astr : * const :: std :: os :: raw :: c_char , bstr : * const :: std :: os :: raw :: c_char ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn tcstrdistutf ( astr : * const :: std :: os :: raw :: c_char , bstr : * const :: std :: os :: raw :: c_char ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn tcstrtoupper ( str : * mut :: std :: os :: raw :: c_char ) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn tcstrtolower ( str : * mut :: std :: os :: raw :: c_char ) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn tcstrtrim ( str : * mut :: std :: os :: raw :: c_char ) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn tcstrsqzspc ( str : * mut :: std :: os :: raw :: c_char ) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn tcisvalidutf8str ( str : * const :: std :: os :: raw :: c_char , len : :: std :: os :: raw :: c_int ) -> bool ; } extern "C" { pub fn tcstrsubchr ( str : * mut :: std :: os :: raw :: c_char , rstr : * const :: std :: os :: raw :: c_char , sstr : * const :: std :: os :: raw :: c_char ) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn tcstrcntutf ( str : * const :: std :: os :: raw :: c_char ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn tcstrcututf ( str : * mut :: std :: os :: raw :: c_char , num : :: std :: os :: raw :: c_int ) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn tcstrutftoucs ( str : * const :: std :: os :: raw :: c_char , ary : * mut u16 , np : * mut :: std :: os :: raw :: c_int ) ; } extern "C" { pub fn tcstrucstoutf ( ary : * const u16 , num : :: std :: os :: raw :: c_int , str : * mut :: std :: os :: raw :: c_char ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn tcstrsplit ( str : * const :: std :: os :: raw :: c_char , delims : * const :: std :: os :: raw :: c_char ) -> * mut TCLIST ; } extern "C" { pub fn tcstrjoin ( list : * const TCLIST , delim : :: std :: os :: raw :: c_char ) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn tcatoi ( str : * const :: std :: os :: raw :: c_char ) -> i64 ; } extern "C" { pub fn tcatoix ( str : * const :: std :: os :: raw :: c_char ) -> i64 ; } extern "C" { pub fn tcatof ( str : * const :: std :: os :: raw :: c_char ) -> f64 ; } extern "C" { pub fn tcatof2 ( str : * const :: std :: os :: raw :: c_char ) -> f64 ; } extern "C" { # [ doc = " Fast conversion of a double number into a string." ] # [ doc = " `cftoa\'  do  not write into `buf\' more than `max\' bytes" ] # [ doc = " (including the terminating null byte (\'\\0\'))." ] # [ doc = "" ] # [ doc = " If returned value >= `max\' it indicates truncation occuried." ] # [ doc = "" ] # [ doc = " @param f Number to convert" ] # [ doc = " @param buf Output buffer." ] # [ doc = " @param max Maximum number of bytes to write into buffer including termination \'\\0\'" ] # [ doc = " @param precision Number of signs after dot." ] # [ doc = " @return" ] pub fn tcftoa ( f : f64 , buf : * mut :: std :: os :: raw :: c_char , max : :: std :: os :: raw :: c_int , precision : :: std :: os :: raw :: c_int ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn tcregexmatch ( str : * const :: std :: os :: raw :: c_char , regex : * const :: std :: os :: raw :: c_char ) -> bool ; } extern "C" { pub fn tcregexreplace ( str : * const :: std :: os :: raw :: c_char , regex : * const :: std :: os :: raw :: c_char , alt : * const :: std :: os :: raw :: c_char ) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn tcmd5hash ( ptr : * const :: std :: os :: raw :: c_void , size : :: std :: os :: raw :: c_int , buf : * mut :: std :: os :: raw :: c_char ) ; } extern "C" { pub fn tcarccipher ( ptr : * const :: std :: os :: raw :: c_void , size : :: std :: os :: raw :: c_int , kbuf : * const :: std :: os :: raw :: c_void , ksiz : :: std :: os :: raw :: c_int , obuf : * mut :: std :: os :: raw :: c_void ) ; } extern "C" { pub fn tctime ( ) -> f64 ; } extern "C" { pub fn tcmstime ( ) -> :: std :: os :: raw :: c_ulong ; } extern "C" { pub fn tccalendar ( t : i64 , jl : :: std :: os :: raw :: c_int , yearp : * mut :: std :: os :: raw :: c_int , monp : * mut :: std :: os :: raw :: c_int , dayp : * mut :: std :: os :: raw :: c_int , hourp : * mut :: std :: os :: raw :: c_int , minp : * mut :: std :: os :: raw :: c_int , secp : * mut :: std :: os :: raw :: c_int ) ; } extern "C" { pub fn tcdatestrwww ( t : i64 , jl : :: std :: os :: raw :: c_int , buf : * mut :: std :: os :: raw :: c_char ) ; } extern "C" { pub fn tcdatestrhttp ( t : i64 , jl : :: std :: os :: raw :: c_int , buf : * mut :: std :: os :: raw :: c_char ) ; } extern "C" { pub fn tcstrmktime ( str : * const :: std :: os :: raw :: c_char ) -> i64 ; } extern "C" { pub fn tcjetlag ( ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn tcdayofweek ( year : :: std :: os :: raw :: c_int , mon : :: std :: os :: raw :: c_int , day : :: std :: os :: raw :: c_int ) -> :: std :: os :: raw :: c_int ; } pub const TCUNSPACE : _bindgen_ty_2 = 1 ; pub const TCUNLOWER : _bindgen_ty_2 = 2 ; pub const TCUNNOACC : _bindgen_ty_2 = 4 ; pub const TCUNWIDTH : _bindgen_ty_2 = 8 ; # [ doc = " miscellaneous utilities (for experts)" ] pub type _bindgen_ty_2 = u32 ; pub const TCKWMUTAB : _bindgen_ty_3 = 1 ; pub const TCKWMUCTRL : _bindgen_ty_3 = 2 ; pub const TCKWMUBRCT : _bindgen_ty_3 = 4 ; pub const TCKWNOOVER : _bindgen_ty_3 = 16777216 ; pub const TCKWPULEAD : _bindgen_ty_3 = 33554432 ; pub type _bindgen_ty_3 = u32 ; # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct TCCHIDXNODE { pub seq : u32 , pub hash : u32 , } # [ test ] fn bindgen_test_layout_TCCHIDXNODE ( ) { assert_eq ! ( :: std :: mem :: size_of :: < TCCHIDXNODE > ( ) , 8usize , concat ! ( "Size of: " , stringify ! ( TCCHIDXNODE ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < TCCHIDXNODE > ( ) , 4usize , concat ! ( "Alignment of " , stringify ! ( TCCHIDXNODE ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < TCCHIDXNODE > ( ) ) ) . seq as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( TCCHIDXNODE ) , "::" , stringify ! ( seq ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < TCCHIDXNODE > ( ) ) ) . hash as * const _ as usize } , 4usize , concat ! ( "Offset of field: " , stringify ! ( TCCHIDXNODE ) , "::" , stringify ! ( hash ) ) ) ; } # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct TCCHIDX { pub nodes : * mut TCCHIDXNODE , pub nnum : :: std :: os :: raw :: c_int , } # [ test ] fn bindgen_test_layout_TCCHIDX ( ) { assert_eq ! ( :: std :: mem :: size_of :: < TCCHIDX > ( ) , 16usize , concat ! ( "Size of: " , stringify ! ( TCCHIDX ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < TCCHIDX > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( TCCHIDX ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < TCCHIDX > ( ) ) ) . nodes as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( TCCHIDX ) , "::" , stringify ! ( nodes ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < TCCHIDX > ( ) ) ) . nnum as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( TCCHIDX ) , "::" , stringify ! ( nnum ) ) ) ; } extern "C" { pub fn tcstrisnum ( str : * const :: std :: os :: raw :: c_char ) -> bool ; } extern "C" { pub fn tcstrisintnum ( str : * const :: std :: os :: raw :: c_char , len : :: std :: os :: raw :: c_int ) -> bool ; } extern "C" { pub fn tcatoih ( str : * const :: std :: os :: raw :: c_char ) -> i64 ; } extern "C" { pub fn tcstrskipspc ( str : * const :: std :: os :: raw :: c_char ) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn tcstrutfnorm ( str : * mut :: std :: os :: raw :: c_char , opts : :: std :: os :: raw :: c_int ) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn tcstrucsnorm ( ary : * mut u16 , num : :: std :: os :: raw :: c_int , opts : :: std :: os :: raw :: c_int ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn tcstrkwic ( str : * const :: std :: os :: raw :: c_char , words : * const TCLIST , width : :: std :: os :: raw :: c_int , opts : :: std :: os :: raw :: c_int ) -> * mut TCLIST ; } extern "C" { pub fn tcstrtokenize ( str : * const :: std :: os :: raw :: c_char ) -> * mut TCLIST ; } extern "C" { pub fn tcstrsplit2 ( ptr : * const :: std :: os :: raw :: c_void , size : :: std :: os :: raw :: c_int ) -> * mut TCLIST ; } extern "C" { pub fn tcstrsplit3 ( str : * const :: std :: os :: raw :: c_char , delims : * const :: std :: os :: raw :: c_char ) -> * mut TCMAP ; } extern "C" { pub fn tcstrsplit4 ( ptr : * const :: std :: os :: raw :: c_void , size : :: std :: os :: raw :: c_int ) -> * mut TCMAP ; } extern "C" { pub fn tcstrjoin2 ( list : * const TCLIST , sp : * mut :: std :: os :: raw :: c_int ) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn tcstrjoin3 ( map : * const TCMAP , delim : :: std :: os :: raw :: c_char ) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn tcstrjoin4 ( map : * const TCMAP , sp : * mut :: std :: os :: raw :: c_int ) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn tctopsort ( base : * mut :: std :: os :: raw :: c_void , nmemb : usize , size : usize , top : usize , compar : :: std :: option :: Option < unsafe extern "C" fn ( arg1 : * const :: std :: os :: raw :: c_void , arg2 : * const :: std :: os :: raw :: c_void ) -> :: std :: os :: raw :: c_int > ) ; } extern "C" { pub fn tcsleep ( sec : f64 ) -> bool ; } extern "C" { pub fn tcsysinfo ( ) -> * mut TCMAP ; } extern "C" { pub fn tcchidxnew ( range : :: std :: os :: raw :: c_int ) -> * mut TCCHIDX ; } extern "C" { pub fn tcchidxdel ( chidx : * mut TCCHIDX ) ; } extern "C" { pub fn tcchidxhash ( chidx : * mut TCCHIDX , ptr : * const :: std :: os :: raw :: c_void , size : :: std :: os :: raw :: c_int ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn tcrealpath ( path : * const :: std :: os :: raw :: c_char ) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn tcstatfile ( path : * const :: std :: os :: raw :: c_char , isdirp : * mut bool , sizep : * mut i64 , mtimep : * mut i64 ) -> bool ; } extern "C" { pub fn tcreadfile ( path : * const :: std :: os :: raw :: c_char , limit : :: std :: os :: raw :: c_int , sp : * mut :: std :: os :: raw :: c_int ) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { # [ doc = " Unlink (delete) the specified file" ] # [ doc = " @param path Path of file" ] # [ doc = " @return true of success" ] pub fn tcunlinkfile ( path : * const :: std :: os :: raw :: c_char ) -> bool ; } extern "C" { # [ doc = " Rename the specified file" ] pub fn tcrenamefile ( from : * const :: std :: os :: raw :: c_char , to : * const :: std :: os :: raw :: c_char ) -> bool ; } extern "C" { pub fn tcreadfilelines ( path : * const :: std :: os :: raw :: c_char ) -> * mut TCLIST ; } extern "C" { pub fn tcwritefile ( path : * const :: std :: os :: raw :: c_char , ptr : * const :: std :: os :: raw :: c_void , size : :: std :: os :: raw :: c_int ) -> bool ; } extern "C" { pub fn tccopyfile ( src : * const :: std :: os :: raw :: c_char , dest : * const :: std :: os :: raw :: c_char ) -> bool ; } extern "C" { pub fn tcreaddir ( path : * const :: std :: os :: raw :: c_char ) -> * mut TCLIST ; } extern "C" { pub fn tcglobpat ( pattern : * const :: std :: os :: raw :: c_char ) -> * mut TCLIST ; } extern "C" { pub fn tcremovelink ( path : * const :: std :: os :: raw :: c_char ) -> bool ; } pub const TCFSTART : _bindgen_ty_4 = 0 ; pub const TCFCUR : _bindgen_ty_4 = 1 ; pub const TCFEND : _bindgen_ty_4 = 2 ; pub type _bindgen_ty_4 = u32 ; extern "C" { pub fn tcfseek ( fd : HANDLE , off : off_t , whence : :: std :: os :: raw :: c_int ) -> bool ; } extern "C" { pub fn tcftruncate ( fd : HANDLE , length : off_t ) -> bool ; } extern "C" { pub fn tcwrite ( fd : HANDLE , buf : * const :: std :: os :: raw :: c_void , size : usize ) -> bool ; } extern "C" { pub fn tcread ( fd : HANDLE , buf : * mut :: std :: os :: raw :: c_void , size : usize ) -> bool ; } extern "C" { pub fn tclock ( fd : HANDLE , ex : bool , nb : bool ) -> bool ; } extern "C" { pub fn tcunlock ( fd : HANDLE ) -> bool ; } extern "C" { pub fn tcsystem ( args : * mut * const :: std :: os :: raw :: c_char , anum : :: std :: os :: raw :: c_int ) -> :: std :: os :: raw :: c_int ; } extern "C" { # [ doc = " encoding utilities" ] pub fn tcurlencode ( ptr : * const :: std :: os :: raw :: c_char , size : :: std :: os :: raw :: c_int ) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn tcurldecode ( str : * const :: std :: os :: raw :: c_char , sp : * mut :: std :: os :: raw :: c_int ) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn tcurlbreak ( str : * const :: std :: os :: raw :: c_char ) -> * mut TCMAP ; } extern "C" { pub fn tcurlresolve ( base : * const :: std :: os :: raw :: c_char , target : * const :: std :: os :: raw :: c_char ) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn tcbaseencode ( ptr : * const :: std :: os :: raw :: c_char , size : :: std :: os :: raw :: c_int ) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn tcbasedecode ( str : * const :: std :: os :: raw :: c_char , sp : * mut :: std :: os :: raw :: c_int ) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn tcquoteencode ( ptr : * const :: std :: os :: raw :: c_char , size : :: std :: os :: raw :: c_int ) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn tcquotedecode ( str : * const :: std :: os :: raw :: c_char , sp : * mut :: std :: os :: raw :: c_int ) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn tcmimeencode ( str : * const :: std :: os :: raw :: c_char , encname : * const :: std :: os :: raw :: c_char , base : bool ) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn tcmimedecode ( str : * const :: std :: os :: raw :: c_char , enp : * mut :: std :: os :: raw :: c_char ) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn tcmimebreak ( ptr : * const :: std :: os :: raw :: c_char , size : :: std :: os :: raw :: c_int , headers : * mut TCMAP , sp : * mut :: std :: os :: raw :: c_int ) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn tcmimeparts ( ptr : * const :: std :: os :: raw :: c_char , size : :: std :: os :: raw :: c_int , boundary : * const :: std :: os :: raw :: c_char ) -> * mut TCLIST ; } extern "C" { pub fn tchexencode ( ptr : * const :: std :: os :: raw :: c_char , size : :: std :: os :: raw :: c_int ) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn tchexdecode ( str : * const :: std :: os :: raw :: c_char , sp : * mut :: std :: os :: raw :: c_int ) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn tcpackencode ( ptr : * const :: std :: os :: raw :: c_char , size : :: std :: os :: raw :: c_int , sp : * mut :: std :: os :: raw :: c_int ) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn tcpackdecode ( ptr : * const :: std :: os :: raw :: c_char , size : :: std :: os :: raw :: c_int , sp : * mut :: std :: os :: raw :: c_int ) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn tcbsencode ( ptr : * const :: std :: os :: raw :: c_char , size : :: std :: os :: raw :: c_int , sp : * mut :: std :: os :: raw :: c_int ) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn tcbsdecode ( ptr : * const :: std :: os :: raw :: c_char , size : :: std :: os :: raw :: c_int , sp : * mut :: std :: os :: raw :: c_int ) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn tcdeflate ( ptr : * const :: std :: os :: raw :: c_char , size : :: std :: os :: raw :: c_int , sp : * mut :: std :: os :: raw :: c_int ) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn tcinflate ( ptr : * const :: std :: os :: raw :: c_char , size : :: std :: os :: raw :: c_int , sp : * mut :: std :: os :: raw :: c_int ) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn tcgzipencode ( ptr : * const :: std :: os :: raw :: c_char , size : :: std :: os :: raw :: c_int , sp : * mut :: std :: os :: raw :: c_int ) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn tcgzipdecode ( ptr : * const :: std :: os :: raw :: c_char , size : :: std :: os :: raw :: c_int , sp : * mut :: std :: os :: raw :: c_int ) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn tcgetcrc ( ptr : * const :: std :: os :: raw :: c_char , size : :: std :: os :: raw :: c_int ) -> :: std :: os :: raw :: c_uint ; } extern "C" { pub fn tcbzipencode ( ptr : * const :: std :: os :: raw :: c_char , size : :: std :: os :: raw :: c_int , sp : * mut :: std :: os :: raw :: c_int ) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn tcbzipdecode ( ptr : * const :: std :: os :: raw :: c_char , size : :: std :: os :: raw :: c_int , sp : * mut :: std :: os :: raw :: c_int ) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn tcberencode ( ary : * const :: std :: os :: raw :: c_uint , anum : :: std :: os :: raw :: c_int , sp : * mut :: std :: os :: raw :: c_int ) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn tcberdecode ( ptr : * const :: std :: os :: raw :: c_char , size : :: std :: os :: raw :: c_int , np : * mut :: std :: os :: raw :: c_int ) -> * mut :: std :: os :: raw :: c_uint ; } extern "C" { pub fn tcxmlescape ( str : * const :: std :: os :: raw :: c_char ) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn tcxmlunescape ( str : * const :: std :: os :: raw :: c_char ) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { # [ doc = " encoding utilities (for experts)" ] pub fn tcwwwformencode ( params : * const TCMAP ) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn tcwwwformdecode ( str : * const :: std :: os :: raw :: c_char , params : * mut TCMAP ) ; } extern "C" { pub fn tcwwwformdecode2 ( ptr : * const :: std :: os :: raw :: c_void , size : :: std :: os :: raw :: c_int , type_ : * const :: std :: os :: raw :: c_char , params : * mut TCMAP ) ; } extern "C" { pub fn tcxmlbreak ( str : * const :: std :: os :: raw :: c_char ) -> * mut TCLIST ; } extern "C" { pub fn tcxmlattrs ( str : * const :: std :: os :: raw :: c_char ) -> * mut TCMAP ; } extern "C" { pub fn tccstrescape ( str : * const :: std :: os :: raw :: c_char ) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn tccstrunescape ( str : * const :: std :: os :: raw :: c_char ) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn tcjsonescape ( str : * const :: std :: os :: raw :: c_char ) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn tcjsonunescape ( str : * const :: std :: os :: raw :: c_char ) -> * mut :: std :: os :: raw :: c_char ; } # [ doc = " template serializer" ] # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct TCTMPL { pub elems : * mut TCLIST , pub begsep : * mut :: std :: os :: raw :: c_char , pub endsep : * mut :: std :: os :: raw :: c_char , pub conf : * mut TCMAP , } # [ test ] fn bindgen_test_layout_TCTMPL ( ) { assert_eq ! ( :: std :: mem :: size_of :: < TCTMPL > ( ) , 32usize , concat ! ( "Size of: " , stringify ! ( TCTMPL ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < TCTMPL > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( TCTMPL ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < TCTMPL > ( ) ) ) . elems as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( TCTMPL ) , "::" , stringify ! ( elems ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < TCTMPL > ( ) ) ) . begsep as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( TCTMPL ) , "::" , stringify ! ( begsep ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < TCTMPL > ( ) ) ) . endsep as * const _ as usize } , 16usize , concat ! ( "Offset of field: " , stringify ! ( TCTMPL ) , "::" , stringify ! ( endsep ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < TCTMPL > ( ) ) ) . conf as * const _ as usize } , 24usize , concat ! ( "Offset of field: " , stringify ! ( TCTMPL ) , "::" , stringify ! ( conf ) ) ) ; } extern "C" { pub fn tctmplnew ( ) -> * mut TCTMPL ; } extern "C" { pub fn tctmpldel ( tmpl : * mut TCTMPL ) ; } extern "C" { pub fn tctmplsetsep ( tmpl : * mut TCTMPL , begsep : * const :: std :: os :: raw :: c_char , endsep : * const :: std :: os :: raw :: c_char ) ; } extern "C" { pub fn tctmplload ( tmpl : * mut TCTMPL , str : * const :: std :: os :: raw :: c_char ) ; } extern "C" { pub fn tctmplload2 ( tmpl : * mut TCTMPL , path : * const :: std :: os :: raw :: c_char ) -> bool ; } extern "C" { pub fn tctmpldump ( tmpl : * mut TCTMPL , vars : * const TCMAP ) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn tctmplconf ( tmpl : * mut TCTMPL , name : * const :: std :: os :: raw :: c_char ) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn tclistpushlist ( list : * mut TCLIST , obj : * const TCLIST ) ; } extern "C" { pub fn tclistpushmap ( list : * mut TCLIST , obj : * const TCMAP ) ; } extern "C" { pub fn tcmapputlist ( map : * mut TCMAP , kstr : * const :: std :: os :: raw :: c_char , obj : * const TCLIST ) ; } extern "C" { pub fn tcmapputmap ( map : * mut TCMAP , kstr : * const :: std :: os :: raw :: c_char , obj : * const TCMAP ) ; } # [ doc = " pointer list" ] # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct TCPTRLIST { pub array : * mut * mut :: std :: os :: raw :: c_void , pub anum : :: std :: os :: raw :: c_int , pub start : :: std :: os :: raw :: c_int , pub num : :: std :: os :: raw :: c_int , } # [ test ] fn bindgen_test_layout_TCPTRLIST ( ) { assert_eq ! ( :: std :: mem :: size_of :: < TCPTRLIST > ( ) , 24usize , concat ! ( "Size of: " , stringify ! ( TCPTRLIST ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < TCPTRLIST > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( TCPTRLIST ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < TCPTRLIST > ( ) ) ) . array as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( TCPTRLIST ) , "::" , stringify ! ( array ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < TCPTRLIST > ( ) ) ) . anum as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( TCPTRLIST ) , "::" , stringify ! ( anum ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < TCPTRLIST > ( ) ) ) . start as * const _ as usize } , 12usize , concat ! ( "Offset of field: " , stringify ! ( TCPTRLIST ) , "::" , stringify ! ( start ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < TCPTRLIST > ( ) ) ) . num as * const _ as usize } , 16usize , concat ! ( "Offset of field: " , stringify ! ( TCPTRLIST ) , "::" , stringify ! ( num ) ) ) ; } extern "C" { pub fn tcptrlistnew ( ) -> * mut TCPTRLIST ; } extern "C" { pub fn tcptrlistnew2 ( anum : :: std :: os :: raw :: c_int ) -> * mut TCPTRLIST ; } extern "C" { pub fn tcptrlistdup ( ptrlist : * const TCPTRLIST ) -> * mut TCPTRLIST ; } extern "C" { pub fn tcptrlistdel ( ptrlist : * mut TCPTRLIST ) ; } extern "C" { pub fn tcptrlistnum ( ptrlist : * const TCPTRLIST ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn tcptrlistval ( ptrlist : * const TCPTRLIST , index : :: std :: os :: raw :: c_int ) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn tcptrlistpush ( ptrlist : * mut TCPTRLIST , ptr : * mut :: std :: os :: raw :: c_void ) ; } extern "C" { pub fn tcptrlistpop ( ptrlist : * mut TCPTRLIST ) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn tcptrlistunshift ( ptrlist : * mut TCPTRLIST , ptr : * mut :: std :: os :: raw :: c_void ) ; } extern "C" { pub fn tcptrlistshift ( ptrlist : * mut TCPTRLIST ) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn tcptrlistinsert ( ptrlist : * mut TCPTRLIST , index : :: std :: os :: raw :: c_int , ptr : * mut :: std :: os :: raw :: c_void ) ; } extern "C" { pub fn tcptrlistremove ( ptrlist : * mut TCPTRLIST , index : :: std :: os :: raw :: c_int ) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn tcptrlistover ( ptrlist : * mut TCPTRLIST , index : :: std :: os :: raw :: c_int , ptr : * mut :: std :: os :: raw :: c_void ) ; } extern "C" { pub fn tcptrlistclear ( ptrlist : * mut TCPTRLIST ) ; } # [ doc = " bit operation utilities" ] # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct TCBITSTRM { pub sp : * mut u8 , pub cp : * mut u8 , pub idx : :: std :: os :: raw :: c_int , pub size : :: std :: os :: raw :: c_int , } # [ test ] fn bindgen_test_layout_TCBITSTRM ( ) { assert_eq ! ( :: std :: mem :: size_of :: < TCBITSTRM > ( ) , 24usize , concat ! ( "Size of: " , stringify ! ( TCBITSTRM ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < TCBITSTRM > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( TCBITSTRM ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < TCBITSTRM > ( ) ) ) . sp as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( TCBITSTRM ) , "::" , stringify ! ( sp ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < TCBITSTRM > ( ) ) ) . cp as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( TCBITSTRM ) , "::" , stringify ! ( cp ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < TCBITSTRM > ( ) ) ) . idx as * const _ as usize } , 16usize , concat ! ( "Offset of field: " , stringify ! ( TCBITSTRM ) , "::" , stringify ! ( idx ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < TCBITSTRM > ( ) ) ) . size as * const _ as usize } , 20usize , concat ! ( "Offset of field: " , stringify ! ( TCBITSTRM ) , "::" , stringify ! ( size ) ) ) ; } pub type TCBITMAP = :: std :: os :: raw :: c_uchar ; pub const TCESUCCESS : _bindgen_ty_5 = 0 ; pub const TCETHREAD : _bindgen_ty_5 = 1 ; pub const TCEINVALID : _bindgen_ty_5 = 2 ; pub const TCENOFILE : _bindgen_ty_5 = 3 ; pub const TCENOPERM : _bindgen_ty_5 = 4 ; pub const TCEMETA : _bindgen_ty_5 = 5 ; pub const TCERHEAD : _bindgen_ty_5 = 6 ; pub const TCEOPEN : _bindgen_ty_5 = 7 ; pub const TCECLOSE : _bindgen_ty_5 = 8 ; pub const TCETRUNC : _bindgen_ty_5 = 9 ; pub const TCESYNC : _bindgen_ty_5 = 10 ; pub const TCESTAT : _bindgen_ty_5 = 11 ; pub const TCESEEK : _bindgen_ty_5 = 12 ; pub const TCEREAD : _bindgen_ty_5 = 13 ; pub const TCEWRITE : _bindgen_ty_5 = 14 ; pub const TCEMMAP : _bindgen_ty_5 = 15 ; pub const TCELOCK : _bindgen_ty_5 = 16 ; pub const TCEUNLINK : _bindgen_ty_5 = 17 ; pub const TCERENAME : _bindgen_ty_5 = 18 ; pub const TCEMKDIR : _bindgen_ty_5 = 19 ; pub const TCERMDIR : _bindgen_ty_5 = 20 ; pub const TCEKEEP : _bindgen_ty_5 = 21 ; pub const TCENOREC : _bindgen_ty_5 = 22 ; pub const TCETR : _bindgen_ty_5 = 23 ; pub const TCEICOMPRESS : _bindgen_ty_5 = 24 ; pub const TCEDATACOMPRESS : _bindgen_ty_5 = 25 ; pub const TCEMISC : _bindgen_ty_5 = 9999 ; pub type _bindgen_ty_5 = u32 ; pub const TCDBTHASH : _bindgen_ty_6 = 0 ; pub const TCDBTBTREE : _bindgen_ty_6 = 1 ; pub const TCDBTFIXED : _bindgen_ty_6 = 2 ; pub const TCDBTTABLE : _bindgen_ty_6 = 3 ; pub type _bindgen_ty_6 = u32 ; extern "C" { pub fn tcfilerrno2tcerr ( tcerrdef : :: std :: os :: raw :: c_int ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn tcerrmsg ( ecode : :: std :: os :: raw :: c_int ) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn tcmyfatal ( message : * const :: std :: os :: raw :: c_char ) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn tczeromap ( size : u64 ) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn tczerounmap ( ptr : * mut :: std :: os :: raw :: c_void ) ; } extern "C" { pub fn tcglobalmutexlock ( ) -> bool ; } extern "C" { pub fn tcglobalmutexlockshared ( ) -> bool ; } extern "C" { pub fn tcglobalmutexunlock ( ) -> bool ; } extern "C" { pub fn tcpathlock ( path : * const :: std :: os :: raw :: c_char ) -> bool ; } extern "C" { pub fn tcpathunlock ( path : * const :: std :: os :: raw :: c_char ) -> bool ; } extern "C" { pub fn tcnumtostrbin ( num : u64 , buf : * mut :: std :: os :: raw :: c_char , col : :: std :: os :: raw :: c_int , fc : :: std :: os :: raw :: c_int ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn tccmplexical ( aptr : * const :: std :: os :: raw :: c_char , asiz : :: std :: os :: raw :: c_int , bptr : * const :: std :: os :: raw :: c_char , bsiz : :: std :: os :: raw :: c_int , op : * mut :: std :: os :: raw :: c_void ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn tccmpdecimal ( aptr : * const :: std :: os :: raw :: c_char , asiz : :: std :: os :: raw :: c_int , bptr : * const :: std :: os :: raw :: c_char , bsiz : :: std :: os :: raw :: c_int , op : * mut :: std :: os :: raw :: c_void ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn tccmpint32 ( aptr : * const :: std :: os :: raw :: c_char , asiz : :: std :: os :: raw :: c_int , bptr : * const :: std :: os :: raw :: c_char , bsiz : :: std :: os :: raw :: c_int , op : * mut :: std :: os :: raw :: c_void ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn tccmpint64 ( aptr : * const :: std :: os :: raw :: c_char , asiz : :: std :: os :: raw :: c_int , bptr : * const :: std :: os :: raw :: c_char , bsiz : :: std :: os :: raw :: c_int , op : * mut :: std :: os :: raw :: c_void ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn tcbwtencode ( ptr : * const :: std :: os :: raw :: c_char , size : :: std :: os :: raw :: c_int , idxp : * mut :: std :: os :: raw :: c_int ) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn tcbwtdecode ( ptr : * const :: std :: os :: raw :: c_char , size : :: std :: os :: raw :: c_int , idx : :: std :: os :: raw :: c_int ) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn tclog2l ( num : :: std :: os :: raw :: c_long ) -> :: std :: os :: raw :: c_long ; } extern "C" { pub fn tclog2d ( num : f64 ) -> f64 ; } extern "C" { pub fn tcpagealign ( off : u64 ) -> u64 ; } extern "C" { # [ doc = " Get page size" ] pub fn tcpagsize ( ) -> off_t ; } extern "C" { # [ doc = " Convert string into case insensitive normalized format." ] # [ doc = " @param str Str pointer" ] # [ doc = " @param strlen String data length in bytes" ] # [ doc = " @param dstptr Allocated NULL terminated destination buffer" ] # [ doc = " @return In case of success the length of the resulting UTF-8 string is" ] # [ doc = "  returned, otherwise a negative value." ] pub fn tcicaseformat ( str : * const :: std :: os :: raw :: c_char , strl : :: std :: os :: raw :: c_int , placeholder : * mut :: std :: os :: raw :: c_void , placeholdersz : :: std :: os :: raw :: c_int , dstptr : * mut * mut :: std :: os :: raw :: c_char ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn tcutf8map ( str : * const u8 , strl : :: std :: os :: raw :: c_int , placeholder : * mut :: std :: os :: raw :: c_void , placeholdersz : :: std :: os :: raw :: c_int , dstptr : * mut * mut u8 , options : :: std :: os :: raw :: c_int ) -> :: std :: os :: raw :: c_int ; } extern "C" { # [ doc = " Get the hash value by MurMur hashing." ] # [ doc = " @param buf the source buffer." ] # [ doc = " @param size the size of the source buffer." ] # [ doc = " @return the hash value." ] pub fn hashmurmur64 ( buf : * const :: std :: os :: raw :: c_void , size : usize , seed : u32 ) -> u64 ; } extern "C" { pub fn hashmurmur32 ( buf : * const :: std :: os :: raw :: c_void , size : usize , seed : u32 ) -> u32 ; } # [ repr ( C ) ] # [ derive ( Copy , Clone ) ] pub union tcgeneric_t { pub i : i32 , pub l : i64 , pub d : f64 , pub p : * mut :: std :: os :: raw :: c_void , pub f : TCCMP , _bindgen_union_align : u64 , } # [ test ] fn bindgen_test_layout_tcgeneric_t ( ) { assert_eq ! ( :: std :: mem :: size_of :: < tcgeneric_t > ( ) , 8usize , concat ! ( "Size of: " , stringify ! ( tcgeneric_t ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < tcgeneric_t > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( tcgeneric_t ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < tcgeneric_t > ( ) ) ) . i as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( tcgeneric_t ) , "::" , stringify ! ( i ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < tcgeneric_t > ( ) ) ) . l as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( tcgeneric_t ) , "::" , stringify ! ( l ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < tcgeneric_t > ( ) ) ) . d as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( tcgeneric_t ) , "::" , stringify ! ( d ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < tcgeneric_t > ( ) ) ) . p as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( tcgeneric_t ) , "::" , stringify ! ( p ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < tcgeneric_t > ( ) ) ) . f as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( tcgeneric_t ) , "::" , stringify ! ( f ) ) ) ; } # [ doc = "< Trying to create a BSON object larger than INT_MAX." ] pub const bson_error_t_BSON_SIZE_OVERFLOW : bson_error_t = 1 ; pub type bson_error_t = u32 ; # [ doc = "< BSON is valid and UTF-8 compliant." ] pub const bson_validity_t_BSON_VALID : bson_validity_t = 0 ; # [ doc = "< A key or a string is not valid UTF-8." ] pub const bson_validity_t_BSON_NOT_UTF8 : bson_validity_t = 2 ; # [ doc = "< Warning: key contains \'.\' character." ] pub const bson_validity_t_BSON_FIELD_HAS_DOT : bson_validity_t = 4 ; # [ doc = "< Warning: key starts with \'$\' character." ] pub const bson_validity_t_BSON_FIELD_INIT_DOLLAR : bson_validity_t = 8 ; # [ doc = "< Trying to modify a finished BSON object." ] pub const bson_validity_t_BSON_ALREADY_FINISHED : bson_validity_t = 16 ; # [ doc = "< Unspecified error" ] pub const bson_validity_t_BSON_ERROR_ANY : bson_validity_t = 32 ; # [ doc = "< BSON object not finished" ] pub const bson_validity_t_BSON_NOT_FINISHED : bson_validity_t = 64 ; pub type bson_validity_t = u32 ; pub const bson_binary_subtype_t_BSON_BIN_BINARY : bson_binary_subtype_t = 0 ; pub const bson_binary_subtype_t_BSON_BIN_FUNC : bson_binary_subtype_t = 1 ; # [ doc = "< Deprecated" ] pub const bson_binary_subtype_t_BSON_BIN_BINARY_OLD : bson_binary_subtype_t = 2 ; # [ doc = "< Deprecated" ] pub const bson_binary_subtype_t_BSON_BIN_UUID_OLD : bson_binary_subtype_t = 3 ; pub const bson_binary_subtype_t_BSON_BIN_UUID : bson_binary_subtype_t = 4 ; pub const bson_binary_subtype_t_BSON_BIN_MD5 : bson_binary_subtype_t = 5 ; pub const bson_binary_subtype_t_BSON_BIN_USER : bson_binary_subtype_t = 128 ; pub type bson_binary_subtype_t = u32 ; pub const bson_flags_t_BSON_FLAG_QUERY_MODE : bson_flags_t = 1 ; # [ doc = "< If it set BSON data is allocated on stack and realloc should deal with this case" ] pub const bson_flags_t_BSON_FLAG_STACK_ALLOCATED : bson_flags_t = 2 ; pub type bson_flags_t = u32 ; pub const bson_type_BSON_EOO : bson_type = 0 ; pub const bson_type_BSON_DOUBLE : bson_type = 1 ; pub const bson_type_BSON_STRING : bson_type = 2 ; pub const bson_type_BSON_OBJECT : bson_type = 3 ; pub const bson_type_BSON_ARRAY : bson_type = 4 ; pub const bson_type_BSON_BINDATA : bson_type = 5 ; # [ doc = "< Deprecated" ] pub const bson_type_BSON_UNDEFINED : bson_type = 6 ; pub const bson_type_BSON_OID : bson_type = 7 ; pub const bson_type_BSON_BOOL : bson_type = 8 ; pub const bson_type_BSON_DATE : bson_type = 9 ; pub const bson_type_BSON_NULL : bson_type = 10 ; pub const bson_type_BSON_REGEX : bson_type = 11 ; # [ doc = "< Deprecated." ] pub const bson_type_BSON_DBREF : bson_type = 12 ; pub const bson_type_BSON_CODE : bson_type = 13 ; # [ doc = "< Deprecated." ] pub const bson_type_BSON_SYMBOL : bson_type = 14 ; pub const bson_type_BSON_CODEWSCOPE : bson_type = 15 ; pub const bson_type_BSON_INT : bson_type = 16 ; pub const bson_type_BSON_TIMESTAMP : bson_type = 17 ; pub const bson_type_BSON_LONG : bson_type = 18 ; pub type bson_type = u32 ; pub type bson_bool_t = :: std :: os :: raw :: c_int ; # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct bson_iterator { pub cur : * const :: std :: os :: raw :: c_char , pub first : bson_bool_t , } # [ test ] fn bindgen_test_layout_bson_iterator ( ) { assert_eq ! ( :: std :: mem :: size_of :: < bson_iterator > ( ) , 16usize , concat ! ( "Size of: " , stringify ! ( bson_iterator ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < bson_iterator > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( bson_iterator ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < bson_iterator > ( ) ) ) . cur as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( bson_iterator ) , "::" , stringify ! ( cur ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < bson_iterator > ( ) ) ) . first as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( bson_iterator ) , "::" , stringify ! ( first ) ) ) ; } # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct bson { # [ doc = "< Pointer to a block of data in this BSON object." ] pub data : * mut :: std :: os :: raw :: c_char , # [ doc = "< Pointer to the current position." ] pub cur : * mut :: std :: os :: raw :: c_char , # [ doc = "< The number of bytes allocated to char *data." ] pub dataSize : :: std :: os :: raw :: c_int , # [ doc = "< When finished, the BSON object can no longer be modified." ] pub finished : bson_bool_t , # [ doc = "< A stack used to keep track of nested BSON elements." ] pub stack : [ :: std :: os :: raw :: c_int ; 32usize ] , # [ doc = "< Index of current stack position." ] pub stackPos : :: std :: os :: raw :: c_int , # [ doc = "< Bitfield representing errors or warnings on this buffer" ] pub err : :: std :: os :: raw :: c_int , # [ doc = "< A string representation of the most recent error or warning." ] pub errstr : * mut :: std :: os :: raw :: c_char , pub flags : :: std :: os :: raw :: c_int , } # [ test ] fn bindgen_test_layout_bson ( ) { assert_eq ! ( :: std :: mem :: size_of :: < bson > ( ) , 176usize , concat ! ( "Size of: " , stringify ! ( bson ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < bson > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( bson ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < bson > ( ) ) ) . data as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( bson ) , "::" , stringify ! ( data ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < bson > ( ) ) ) . cur as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( bson ) , "::" , stringify ! ( cur ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < bson > ( ) ) ) . dataSize as * const _ as usize } , 16usize , concat ! ( "Offset of field: " , stringify ! ( bson ) , "::" , stringify ! ( dataSize ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < bson > ( ) ) ) . finished as * const _ as usize } , 20usize , concat ! ( "Offset of field: " , stringify ! ( bson ) , "::" , stringify ! ( finished ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < bson > ( ) ) ) . stack as * const _ as usize } , 24usize , concat ! ( "Offset of field: " , stringify ! ( bson ) , "::" , stringify ! ( stack ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < bson > ( ) ) ) . stackPos as * const _ as usize } , 152usize , concat ! ( "Offset of field: " , stringify ! ( bson ) , "::" , stringify ! ( stackPos ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < bson > ( ) ) ) . err as * const _ as usize } , 156usize , concat ! ( "Offset of field: " , stringify ! ( bson ) , "::" , stringify ! ( err ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < bson > ( ) ) ) . errstr as * const _ as usize } , 160usize , concat ! ( "Offset of field: " , stringify ! ( bson ) , "::" , stringify ! ( errstr ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < bson > ( ) ) ) . flags as * const _ as usize } , 168usize , concat ! ( "Offset of field: " , stringify ! ( bson ) , "::" , stringify ! ( flags ) ) ) ; } # [ repr ( C , packed ) ] # [ derive ( Copy , Clone ) ] pub union bson_oid_t { pub bytes : [ :: std :: os :: raw :: c_char ; 12usize ] , pub ints : [ :: std :: os :: raw :: c_int ; 3usize ] , _bindgen_union_align : [ u8 ; 12usize ] , } # [ test ] fn bindgen_test_layout_bson_oid_t ( ) { assert_eq ! ( :: std :: mem :: size_of :: < bson_oid_t > ( ) , 12usize , concat ! ( "Size of: " , stringify ! ( bson_oid_t ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < bson_oid_t > ( ) , 1usize , concat ! ( "Alignment of " , stringify ! ( bson_oid_t ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < bson_oid_t > ( ) ) ) . bytes as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( bson_oid_t ) , "::" , stringify ! ( bytes ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < bson_oid_t > ( ) ) ) . ints as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( bson_oid_t ) , "::" , stringify ! ( ints ) ) ) ; } pub type bson_date_t = i64 ; # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct bson_timestamp_t { pub i : :: std :: os :: raw :: c_int , pub t : :: std :: os :: raw :: c_int , } # [ test ] fn bindgen_test_layout_bson_timestamp_t ( ) { assert_eq ! ( :: std :: mem :: size_of :: < bson_timestamp_t > ( ) , 8usize , concat ! ( "Size of: " , stringify ! ( bson_timestamp_t ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < bson_timestamp_t > ( ) , 4usize , concat ! ( "Alignment of " , stringify ! ( bson_timestamp_t ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < bson_timestamp_t > ( ) ) ) . i as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( bson_timestamp_t ) , "::" , stringify ! ( i ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < bson_timestamp_t > ( ) ) ) . t as * const _ as usize } , 4usize , concat ! ( "Offset of field: " , stringify ! ( bson_timestamp_t ) , "::" , stringify ! ( t ) ) ) ; } extern "C" { pub fn bson_first_errormsg ( bson : * mut bson ) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn bson_create ( ) -> * mut bson ; } extern "C" { pub fn bson_dispose ( b : * mut bson ) ; } extern "C" { # [ doc = " Size of a BSON object." ] # [ doc = "" ] # [ doc = " @param b the BSON object." ] # [ doc = "" ] # [ doc = " @return the size." ] pub fn bson_size ( b : * const bson ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn bson_size2 ( bsdata : * const :: std :: os :: raw :: c_void ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn bson_buffer_size ( b : * const bson ) -> :: std :: os :: raw :: c_int ; } extern "C" { # [ doc = " Return a pointer to the raw buffer stored by this bson object." ] # [ doc = "" ] # [ doc = " @param b a BSON object" ] pub fn bson_data ( b : * const bson ) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn bson_data2 ( b : * const bson , bsize : * mut :: std :: os :: raw :: c_int ) -> * const :: std :: os :: raw :: c_char ; } extern "C" { # [ doc = " Print a string representation of a BSON object." ] # [ doc = "" ] # [ doc = " @param bson the raw data to print." ] # [ doc = " @param depth the depth to recurse the object.x" ] pub fn bson_print_raw ( bson : * const :: std :: os :: raw :: c_char , depth : :: std :: os :: raw :: c_int ) ; } extern "C" { # [ doc = " Advance a bson_iterator to the named field." ] # [ doc = "" ] # [ doc = " @param it the bson_iterator to use." ] # [ doc = " @param obj the BSON object to use." ] # [ doc = " @param name the name of the field to find." ] # [ doc = "" ] # [ doc = " @return the type of the found object or BSON_EOO if it is not found." ] pub fn bson_find ( it : * mut bson_iterator , obj : * const bson , name : * const :: std :: os :: raw :: c_char ) -> bson_type ; } extern "C" { pub fn bson_find_from_buffer ( it : * mut bson_iterator , buffer : * const :: std :: os :: raw :: c_char , name : * const :: std :: os :: raw :: c_char ) -> bson_type ; } # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct FFPCTX { pub fpath : * const :: std :: os :: raw :: c_char , pub fplen : :: std :: os :: raw :: c_int , pub input : * mut bson_iterator , pub stopos : :: std :: os :: raw :: c_int , pub stopnestedarr : bool , # [ doc = "< Array index of the first matched array field" ] pub mpos : :: std :: os :: raw :: c_int , # [ doc = "< Position of `$` in array projection fieldpath." ] pub dpos : :: std :: os :: raw :: c_int , } # [ test ] fn bindgen_test_layout_FFPCTX ( ) { assert_eq ! ( :: std :: mem :: size_of :: < FFPCTX > ( ) , 40usize , concat ! ( "Size of: " , stringify ! ( FFPCTX ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < FFPCTX > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( FFPCTX ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < FFPCTX > ( ) ) ) . fpath as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( FFPCTX ) , "::" , stringify ! ( fpath ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < FFPCTX > ( ) ) ) . fplen as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( FFPCTX ) , "::" , stringify ! ( fplen ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < FFPCTX > ( ) ) ) . input as * const _ as usize } , 16usize , concat ! ( "Offset of field: " , stringify ! ( FFPCTX ) , "::" , stringify ! ( input ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < FFPCTX > ( ) ) ) . stopos as * const _ as usize } , 24usize , concat ! ( "Offset of field: " , stringify ! ( FFPCTX ) , "::" , stringify ! ( stopos ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < FFPCTX > ( ) ) ) . stopnestedarr as * const _ as usize } , 28usize , concat ! ( "Offset of field: " , stringify ! ( FFPCTX ) , "::" , stringify ! ( stopnestedarr ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < FFPCTX > ( ) ) ) . mpos as * const _ as usize } , 32usize , concat ! ( "Offset of field: " , stringify ! ( FFPCTX ) , "::" , stringify ! ( mpos ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < FFPCTX > ( ) ) ) . dpos as * const _ as usize } , 36usize , concat ! ( "Offset of field: " , stringify ! ( FFPCTX ) , "::" , stringify ! ( dpos ) ) ) ; } extern "C" { # [ doc = " Advance specified iterator \'it\' to field value pointing by \'fieldpath\'/" ] # [ doc = " Field path string format: \'field1.nestedfield1.nestedfield.2\'." ] # [ doc = " If specified field not found BSON_EOO will be returned." ] # [ doc = "" ] # [ doc = " @param fieldpath Path specification to the BSON field." ] # [ doc = " @param it the bson_iterator to use." ] # [ doc = " @return the type of the found object or BSON_EOO if it is not found." ] pub fn bson_find_fieldpath_value ( fieldpath : * const :: std :: os :: raw :: c_char , it : * mut bson_iterator ) -> bson_type ; } extern "C" { pub fn bson_find_fieldpath_value2 ( fpath : * const :: std :: os :: raw :: c_char , fplen : :: std :: os :: raw :: c_int , it : * mut bson_iterator ) -> bson_type ; } extern "C" { pub fn bson_find_fieldpath_value3 ( ffctx : * mut FFPCTX ) -> bson_type ; } pub const bson_traverse_flags_t_BSON_TRAVERSE_ARRAYS_EXCLUDED : bson_traverse_flags_t = 1 ; pub const bson_traverse_flags_t_BSON_TRAVERSE_OBJECTS_EXCLUDED : bson_traverse_flags_t = 2 ; # [ doc = " BSON object visitor" ] # [ doc = " @param it bson iterator to traverse" ] # [ doc = " @param visitor Visitor function" ] # [ doc = " @param op Opaque data for visitor" ] pub type bson_traverse_flags_t = u32 ; pub const bson_visitor_cmd_t_BSON_VCMD_OK : bson_visitor_cmd_t = 0 ; pub const bson_visitor_cmd_t_BSON_VCMD_TERMINATE : bson_visitor_cmd_t = 1 ; pub const bson_visitor_cmd_t_BSON_VCMD_SKIP_NESTED : bson_visitor_cmd_t = 2 ; pub const bson_visitor_cmd_t_BSON_VCMD_SKIP_AFTER : bson_visitor_cmd_t = 4 ; pub type bson_visitor_cmd_t = u32 ; pub type BSONVISITOR = :: std :: option :: Option < unsafe extern "C" fn ( ipath : * const :: std :: os :: raw :: c_char , ipathlen : :: std :: os :: raw :: c_int , key : * const :: std :: os :: raw :: c_char , keylen : :: std :: os :: raw :: c_int , it : * const bson_iterator , after : bool , op : * mut :: std :: os :: raw :: c_void ) -> bson_visitor_cmd_t > ; extern "C" { pub fn bson_visit_fields ( it : * mut bson_iterator , flags : bson_traverse_flags_t , visitor : BSONVISITOR , op : * mut :: std :: os :: raw :: c_void ) ; } extern "C" { pub fn bson_iterator_create ( ) -> * mut bson_iterator ; } extern "C" { pub fn bson_iterator_dispose ( arg1 : * mut bson_iterator ) ; } extern "C" { # [ doc = " Initialize a bson_iterator." ] # [ doc = "" ] # [ doc = " @param i the bson_iterator to initialize." ] # [ doc = " @param bson the BSON object to associate with the iterator." ] pub fn bson_iterator_init ( i : * mut bson_iterator , b : * const bson ) ; } extern "C" { # [ doc = " Initialize a bson iterator from a const char* buffer. Note" ] # [ doc = " that this is mostly used internally." ] # [ doc = "" ] # [ doc = " @param i the bson_iterator to initialize." ] # [ doc = " @param buffer the buffer to point to." ] pub fn bson_iterator_from_buffer ( i : * mut bson_iterator , buffer : * const :: std :: os :: raw :: c_char ) ; } extern "C" { # [ doc = " Check to see if the bson_iterator has more data." ] # [ doc = "" ] # [ doc = " @param i the iterator." ] # [ doc = "" ] # [ doc = " @return  returns true if there is more data." ] pub fn bson_iterator_more ( i : * const bson_iterator ) -> bson_bool_t ; } extern "C" { # [ doc = " Point the iterator at the next BSON object." ] # [ doc = "" ] # [ doc = " @param i the bson_iterator." ] # [ doc = "" ] # [ doc = " @return the type of the next BSON object." ] pub fn bson_iterator_next ( i : * mut bson_iterator ) -> bson_type ; } extern "C" { # [ doc = " Get the type of the BSON object currently pointed to by the iterator." ] # [ doc = "" ] # [ doc = " @param i the bson_iterator" ] # [ doc = "" ] # [ doc = " @return  the type of the current BSON object." ] pub fn bson_iterator_type ( i : * const bson_iterator ) -> bson_type ; } extern "C" { # [ doc = " Get the key of the BSON object currently pointed to by the iterator." ] # [ doc = "" ] # [ doc = " @param i the bson_iterator" ] # [ doc = "" ] # [ doc = " @return the key of the current BSON object." ] pub fn bson_iterator_key ( i : * const bson_iterator ) -> * const :: std :: os :: raw :: c_char ; } extern "C" { # [ doc = " Get the value of the BSON object currently pointed to by the iterator." ] # [ doc = "" ] # [ doc = " @param i the bson_iterator" ] # [ doc = "" ] # [ doc = " @return  the value of the current BSON object." ] pub fn bson_iterator_value ( i : * const bson_iterator ) -> * const :: std :: os :: raw :: c_char ; } extern "C" { # [ doc = " Get the double value of the BSON object currently pointed to by the" ] # [ doc = " iterator." ] # [ doc = "" ] # [ doc = " @param i the bson_iterator" ] # [ doc = "" ] # [ doc = " @return  the value of the current BSON object." ] pub fn bson_iterator_double ( i : * const bson_iterator ) -> f64 ; } extern "C" { # [ doc = " Get the int value of the BSON object currently pointed to by the iterator." ] # [ doc = "" ] # [ doc = " @param i the bson_iterator" ] # [ doc = "" ] # [ doc = " @return  the value of the current BSON object." ] pub fn bson_iterator_int ( i : * const bson_iterator ) -> :: std :: os :: raw :: c_int ; } extern "C" { # [ doc = " Get the long value of the BSON object currently pointed to by the iterator." ] # [ doc = "" ] # [ doc = " @param i the bson_iterator" ] # [ doc = "" ] # [ doc = " @return the value of the current BSON object." ] pub fn bson_iterator_long ( i : * const bson_iterator ) -> i64 ; } extern "C" { # [ doc = " Get the timestamp value of the BSON object currently pointed to by" ] # [ doc = " the iterator." ] # [ doc = "" ] # [ doc = " @param i the bson_iterator" ] # [ doc = "" ] # [ doc = " @return the value of the current BSON object." ] pub fn bson_iterator_timestamp ( i : * const bson_iterator ) -> bson_timestamp_t ; } extern "C" { pub fn bson_iterator_timestamp_time ( i : * const bson_iterator ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn bson_iterator_timestamp_increment ( i : * const bson_iterator ) -> :: std :: os :: raw :: c_int ; } extern "C" { # [ doc = " Get the boolean value of the BSON object currently pointed to by" ] # [ doc = " the iterator." ] # [ doc = "" ] # [ doc = " @param i the bson_iterator" ] # [ doc = "" ] # [ doc = " @return the value of the current BSON object." ] pub fn bson_iterator_bool ( i : * const bson_iterator ) -> bson_bool_t ; } extern "C" { # [ doc = " Get the double value of the BSON object currently pointed to by the" ] # [ doc = " iterator. Assumes the correct type is used." ] # [ doc = "" ] # [ doc = " @param i the bson_iterator" ] # [ doc = "" ] # [ doc = " @return the value of the current BSON object." ] pub fn bson_iterator_double_raw ( i : * const bson_iterator ) -> f64 ; } extern "C" { # [ doc = " Get the int value of the BSON object currently pointed to by the" ] # [ doc = " iterator. Assumes the correct type is used." ] # [ doc = "" ] # [ doc = " @param i the bson_iterator" ] # [ doc = "" ] # [ doc = " @return the value of the current BSON object." ] pub fn bson_iterator_int_raw ( i : * const bson_iterator ) -> :: std :: os :: raw :: c_int ; } extern "C" { # [ doc = " Get the long value of the BSON object currently pointed to by the" ] # [ doc = " iterator. Assumes the correct type is used." ] # [ doc = "" ] # [ doc = " @param i the bson_iterator" ] # [ doc = "" ] # [ doc = " @return the value of the current BSON object." ] pub fn bson_iterator_long_raw ( i : * const bson_iterator ) -> i64 ; } extern "C" { # [ doc = " Get the bson_bool_t value of the BSON object currently pointed to by the" ] # [ doc = " iterator. Assumes the correct type is used." ] # [ doc = "" ] # [ doc = " @param i the bson_iterator" ] # [ doc = "" ] # [ doc = " @return the value of the current BSON object." ] pub fn bson_iterator_bool_raw ( i : * const bson_iterator ) -> bson_bool_t ; } extern "C" { # [ doc = " Get the bson_oid_t value of the BSON object currently pointed to by the" ] # [ doc = " iterator." ] # [ doc = "" ] # [ doc = " @param i the bson_iterator" ] # [ doc = "" ] # [ doc = " @return the value of the current BSON object." ] pub fn bson_iterator_oid ( i : * const bson_iterator ) -> * mut bson_oid_t ; } extern "C" { # [ doc = " Get the string value of the BSON object currently pointed to by the" ] # [ doc = " iterator." ] # [ doc = "" ] # [ doc = " @param i the bson_iterator" ] # [ doc = "" ] # [ doc = " @return  the value of the current BSON object." ] pub fn bson_iterator_string ( i : * const bson_iterator ) -> * const :: std :: os :: raw :: c_char ; } extern "C" { # [ doc = " Get the string length of the BSON object currently pointed to by the" ] # [ doc = " iterator." ] # [ doc = "" ] # [ doc = " @param i the bson_iterator" ] # [ doc = "" ] # [ doc = " @return the length of the current BSON object." ] pub fn bson_iterator_string_len ( i : * const bson_iterator ) -> :: std :: os :: raw :: c_int ; } extern "C" { # [ doc = " Get the code value of the BSON object currently pointed to by the" ] # [ doc = " iterator. Works with bson_code, bson_codewscope, and BSON_STRING" ] # [ doc = " returns NULL for everything else." ] # [ doc = "" ] # [ doc = " @param i the bson_iterator" ] # [ doc = "" ] # [ doc = " @return the code value of the current BSON object." ] pub fn bson_iterator_code ( i : * const bson_iterator ) -> * const :: std :: os :: raw :: c_char ; } extern "C" { # [ doc = " Calls bson_empty on scope if not a bson_codewscope" ] # [ doc = "" ] # [ doc = " @param i the bson_iterator." ] # [ doc = " @param scope the bson scope." ] pub fn bson_iterator_code_scope ( i : * const bson_iterator , scope : * mut bson ) ; } extern "C" { # [ doc = " Get the date value of the BSON object currently pointed to by the" ] # [ doc = " iterator." ] # [ doc = "" ] # [ doc = " @param i the bson_iterator" ] # [ doc = "" ] # [ doc = " @return the date value of the current BSON object." ] pub fn bson_iterator_date ( i : * const bson_iterator ) -> bson_date_t ; } extern "C" { # [ doc = " Get the time value of the BSON object currently pointed to by the" ] # [ doc = " iterator." ] # [ doc = "" ] # [ doc = " @param i the bson_iterator" ] # [ doc = "" ] # [ doc = " @return the time value of the current BSON object." ] pub fn bson_iterator_time_t ( i : * const bson_iterator ) -> time_t ; } extern "C" { # [ doc = " Get the length of the BSON binary object currently pointed to by the" ] # [ doc = " iterator." ] # [ doc = "" ] # [ doc = " @param i the bson_iterator" ] # [ doc = "" ] # [ doc = " @return the length of the current BSON binary object." ] pub fn bson_iterator_bin_len ( i : * const bson_iterator ) -> :: std :: os :: raw :: c_int ; } extern "C" { # [ doc = " Get the type of the BSON binary object currently pointed to by the" ] # [ doc = " iterator." ] # [ doc = "" ] # [ doc = " @param i the bson_iterator" ] # [ doc = "" ] # [ doc = " @return the type of the current BSON binary object." ] pub fn bson_iterator_bin_type ( i : * const bson_iterator ) -> :: std :: os :: raw :: c_char ; } extern "C" { # [ doc = " Get the value of the BSON binary object currently pointed to by the" ] # [ doc = " iterator." ] # [ doc = "" ] # [ doc = " @param i the bson_iterator" ] # [ doc = "" ] # [ doc = " @return the value of the current BSON binary object." ] pub fn bson_iterator_bin_data ( i : * const bson_iterator ) -> * const :: std :: os :: raw :: c_char ; } extern "C" { # [ doc = " Get the value of the BSON regex object currently pointed to by the" ] # [ doc = " iterator." ] # [ doc = "" ] # [ doc = " @param i the bson_iterator" ] # [ doc = "" ] # [ doc = " @return the value of the current BSON regex object." ] pub fn bson_iterator_regex ( i : * const bson_iterator ) -> * const :: std :: os :: raw :: c_char ; } extern "C" { # [ doc = " Get the options of the BSON regex object currently pointed to by the" ] # [ doc = " iterator." ] # [ doc = "" ] # [ doc = " @param i the bson_iterator." ] # [ doc = "" ] # [ doc = " @return the options of the current BSON regex object." ] pub fn bson_iterator_regex_opts ( i : * const bson_iterator ) -> * const :: std :: os :: raw :: c_char ; } extern "C" { # [ doc = " Get the BSON subobject currently pointed to by the" ] # [ doc = " iterator." ] # [ doc = "" ] # [ doc = " @param i the bson_iterator." ] # [ doc = " @param sub the BSON subobject destination." ] pub fn bson_iterator_subobject ( i : * const bson_iterator , sub : * mut bson ) ; } extern "C" { # [ doc = " Get a bson_iterator that on the BSON subobject." ] # [ doc = "" ] # [ doc = " @param i the bson_iterator." ] # [ doc = " @param sub the iterator to point at the BSON subobject." ] pub fn bson_iterator_subiterator ( i : * const bson_iterator , sub : * mut bson_iterator ) ; } extern "C" { # [ doc = " Create a bson_oid_t from a string." ] # [ doc = "" ] # [ doc = " @param oid the bson_oid_t destination." ] # [ doc = " @param str a null terminated string comprised of at least 24 hex chars." ] pub fn bson_oid_from_string ( oid : * mut bson_oid_t , str : * const :: std :: os :: raw :: c_char ) ; } extern "C" { # [ doc = " Create a string representation of the bson_oid_t." ] # [ doc = "" ] # [ doc = " @param oid the bson_oid_t source." ] # [ doc = " @param str the string representation destination." ] pub fn bson_oid_to_string ( oid : * const bson_oid_t , str : * mut :: std :: os :: raw :: c_char ) ; } extern "C" { # [ doc = " Create a bson_oid object." ] # [ doc = "" ] # [ doc = " @param oid the destination for the newly created bson_oid_t." ] pub fn bson_oid_gen ( oid : * mut bson_oid_t ) ; } extern "C" { # [ doc = " Set a function to be used to generate the second four bytes" ] # [ doc = " of an object id." ] # [ doc = "" ] # [ doc = " @param func a pointer to a function that returns an int." ] pub fn bson_set_oid_fuzz ( func : :: std :: option :: Option < unsafe extern "C" fn ( ) -> :: std :: os :: raw :: c_int > ) ; } extern "C" { # [ doc = " Set a function to be used to generate the incrementing part" ] # [ doc = " of an object id (last four bytes). If you need thread-safety" ] # [ doc = " in generating object ids, you should set this function." ] # [ doc = "" ] # [ doc = " @param func a pointer to a function that returns an int." ] pub fn bson_set_oid_inc ( func : :: std :: option :: Option < unsafe extern "C" fn ( ) -> :: std :: os :: raw :: c_int > ) ; } extern "C" { # [ doc = " Get the time a bson_oid_t was created." ] # [ doc = "" ] # [ doc = " @param oid the bson_oid_t." ] pub fn bson_oid_generated_time ( oid : * mut bson_oid_t ) -> time_t ; } extern "C" { pub fn bson_append ( b : * mut bson , data : * const :: std :: os :: raw :: c_void , len : :: std :: os :: raw :: c_int ) ; } extern "C" { # [ doc = "  Initialize a new bson object. If not created" ] # [ doc = "  with bson_new, you must initialize each new bson" ] # [ doc = "  object using this function." ] # [ doc = "" ] # [ doc = "  @note When finished, you must pass the bson object to" ] # [ doc = "      bson_del( )." ] pub fn bson_init ( b : * mut bson ) ; } extern "C" { # [ doc = " Intialize a new bson object. In query contruction mode allowing" ] # [ doc = " dot and dollar chars in field names." ] # [ doc = " @param b" ] pub fn bson_init_as_query ( b : * mut bson ) ; } extern "C" { # [ doc = " Initialize a BSON object, and point its data" ] # [ doc = " pointer to the provided char*." ] # [ doc = "" ] # [ doc = " @param b the BSON object to initialize." ] # [ doc = " @param data the raw BSON data." ] # [ doc = "" ] # [ doc = " @return BSON_OK or BSON_ERROR." ] pub fn bson_init_data ( b : * mut bson , data : * mut :: std :: os :: raw :: c_char ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn bson_init_finished_data ( b : * mut bson , data : * const :: std :: os :: raw :: c_char ) -> :: std :: os :: raw :: c_int ; } extern "C" { # [ doc = " Initialize a BSON object and set its buffer to the given size." ] # [ doc = "" ] # [ doc = " @param b the BSON object to initialize." ] # [ doc = " @param size the initial size of the buffer." ] pub fn bson_init_size ( b : * mut bson , size : :: std :: os :: raw :: c_int ) ; } extern "C" { pub fn bson_init_on_stack ( b : * mut bson , bstack : * mut :: std :: os :: raw :: c_char , mincapacity : :: std :: os :: raw :: c_int , maxonstack : :: std :: os :: raw :: c_int ) ; } extern "C" { # [ doc = " Initialize a BSON object. If not created with bson_new, you must" ] # [ doc = " initialize each new bson object using this function. Report" ] # [ doc = " problems with memory allocation." ] # [ doc = "" ] # [ doc = " @param b the BSON object to initialize." ] # [ doc = "" ] # [ doc = " @return BSON_OK or BSON_ERROR." ] pub fn bson_safe_init ( b : * mut bson ) -> :: std :: os :: raw :: c_int ; } extern "C" { # [ doc = " Initialize a BSON object and set its buffer to the given size." ] # [ doc = " Report problems with memory allocation." ] # [ doc = "" ] # [ doc = " @param b the BSON object to initialize." ] # [ doc = " @param size the inintial size of the buffer." ] # [ doc = "" ] # [ doc = " @return BSON_OK or BSON_ERROR." ] pub fn bson_safe_init_size ( b : * mut bson , size : :: std :: os :: raw :: c_int ) -> :: std :: os :: raw :: c_int ; } extern "C" { # [ doc = " Intialize a BSON object. In query contruction mode allowing dot and" ] # [ doc = " dollar chars in field names. Report problems with memory" ] # [ doc = " allocation." ] # [ doc = "" ] # [ doc = " @param b" ] # [ doc = "" ] # [ doc = " @return BSON_OK or BSON_ERROR" ] pub fn bson_safe_init_as_query ( b : * mut bson ) -> :: std :: os :: raw :: c_int ; } extern "C" { # [ doc = " Grow a bson object." ] # [ doc = "" ] # [ doc = " @param b the bson to grow." ] # [ doc = " @param bytesNeeded the additional number of bytes needed." ] # [ doc = "" ] # [ doc = " @return BSON_OK or BSON_ERROR with the bson error object set." ] # [ doc = "   Exits if allocation fails." ] pub fn bson_ensure_space ( b : * mut bson , bytesNeeded : :: std :: os :: raw :: c_int ) -> :: std :: os :: raw :: c_int ; } extern "C" { # [ doc = " Finalize a bson object." ] # [ doc = "" ] # [ doc = " @param b the bson object to finalize." ] # [ doc = "" ] # [ doc = " @return the standard error code. To deallocate memory," ] # [ doc = "   call bson_del on the bson object." ] pub fn bson_finish ( b : * mut bson ) -> :: std :: os :: raw :: c_int ; } extern "C" { # [ doc = " Destroy a bson object." ] # [ doc = " Clears bson object and frees internal memory buffers held by bson" ] # [ doc = " object BUT does not delete bson object itself" ] # [ doc = " @param b the bson object to destroy." ] pub fn bson_destroy ( b : * mut bson ) ; } extern "C" { # [ doc = " The bson_del() performs bson_destroy() then frees bson object itself." ] # [ doc = " @param b" ] pub fn bson_del ( b : * mut bson ) ; } extern "C" { pub fn bson_reset ( b : * mut bson ) ; } extern "C" { # [ doc = " Returns a pointer to a static empty BSON object." ] # [ doc = "" ] # [ doc = " @param obj the BSON object to initialize." ] # [ doc = "" ] # [ doc = " @return the empty initialized BSON object." ] pub fn bson_empty ( obj : * mut bson ) -> * mut bson ; } extern "C" { # [ doc = " Make a complete copy of the a BSON object." ] # [ doc = " The source bson object must be in a finished" ] # [ doc = " state; otherwise, the copy will fail." ] # [ doc = "" ] # [ doc = " @param out the copy destination BSON object." ] # [ doc = " @param in the copy source BSON object." ] pub fn bson_copy ( out : * mut bson , in_ : * const bson ) -> :: std :: os :: raw :: c_int ; } extern "C" { # [ doc = " Append a previously created bson_oid_t to a bson object." ] # [ doc = "" ] # [ doc = " @param b the bson to append to." ] # [ doc = " @param name the key for the bson_oid_t." ] # [ doc = " @param oid the bson_oid_t to append." ] # [ doc = "" ] # [ doc = " @return BSON_OK or BSON_ERROR." ] pub fn bson_append_oid ( b : * mut bson , name : * const :: std :: os :: raw :: c_char , oid : * const bson_oid_t ) -> :: std :: os :: raw :: c_int ; } extern "C" { # [ doc = " Append a bson_oid_t to a bson." ] # [ doc = "" ] # [ doc = " @param b the bson to append to." ] # [ doc = " @param name the key for the bson_oid_t." ] # [ doc = "" ] # [ doc = " @return BSON_OK or BSON_ERROR." ] pub fn bson_append_new_oid ( b : * mut bson , name : * const :: std :: os :: raw :: c_char ) -> :: std :: os :: raw :: c_int ; } extern "C" { # [ doc = " Append an int to a bson." ] # [ doc = "" ] # [ doc = " @param b the bson to append to." ] # [ doc = " @param name the key for the int." ] # [ doc = " @param i the int to append." ] # [ doc = "" ] # [ doc = " @return BSON_OK or BSON_ERROR." ] pub fn bson_append_int ( b : * mut bson , name : * const :: std :: os :: raw :: c_char , i : :: std :: os :: raw :: c_int ) -> :: std :: os :: raw :: c_int ; } extern "C" { # [ doc = " Append an long to a bson." ] # [ doc = "" ] # [ doc = " @param b the bson to append to." ] # [ doc = " @param name the key for the long." ] # [ doc = " @param i the long to append." ] # [ doc = "" ] # [ doc = " @return BSON_OK or BSON_ERROR." ] pub fn bson_append_long ( b : * mut bson , name : * const :: std :: os :: raw :: c_char , i : i64 ) -> :: std :: os :: raw :: c_int ; } extern "C" { # [ doc = " Append an double to a bson." ] # [ doc = "" ] # [ doc = " @param b the bson to append to." ] # [ doc = " @param name the key for the double." ] # [ doc = " @param d the double to append." ] # [ doc = "" ] # [ doc = " @return BSON_OK or BSON_ERROR." ] pub fn bson_append_double ( b : * mut bson , name : * const :: std :: os :: raw :: c_char , d : f64 ) -> :: std :: os :: raw :: c_int ; } extern "C" { # [ doc = " Append a string to a bson." ] # [ doc = "" ] # [ doc = " @param b the bson to append to." ] # [ doc = " @param name the key for the string." ] # [ doc = " @param str the string to append." ] # [ doc = "" ] # [ doc = " @return BSON_OK or BSON_ERROR." ] pub fn bson_append_string ( b : * mut bson , name : * const :: std :: os :: raw :: c_char , str : * const :: std :: os :: raw :: c_char ) -> :: std :: os :: raw :: c_int ; } extern "C" { # [ doc = " Append len bytes of a string to a bson." ] # [ doc = "" ] # [ doc = " @param b the bson to append to." ] # [ doc = " @param name the key for the string." ] # [ doc = " @param str the string to append." ] # [ doc = " @param len the number of bytes from str to append." ] # [ doc = "" ] # [ doc = " @return BSON_OK or BSON_ERROR." ] pub fn bson_append_string_n ( b : * mut bson , name : * const :: std :: os :: raw :: c_char , str : * const :: std :: os :: raw :: c_char , len : :: std :: os :: raw :: c_int ) -> :: std :: os :: raw :: c_int ; } extern "C" { # [ doc = " Append a symbol to a bson." ] # [ doc = "" ] # [ doc = " @param b the bson to append to." ] # [ doc = " @param name the key for the symbol." ] # [ doc = " @param str the symbol to append." ] # [ doc = "" ] # [ doc = " @return BSON_OK or BSON_ERROR." ] pub fn bson_append_symbol ( b : * mut bson , name : * const :: std :: os :: raw :: c_char , str : * const :: std :: os :: raw :: c_char ) -> :: std :: os :: raw :: c_int ; } extern "C" { # [ doc = " Append len bytes of a symbol to a bson." ] # [ doc = "" ] # [ doc = " @param b the bson to append to." ] # [ doc = " @param name the key for the symbol." ] # [ doc = " @param str the symbol to append." ] # [ doc = " @param len the number of bytes from str to append." ] # [ doc = "" ] # [ doc = " @return BSON_OK or BSON_ERROR." ] pub fn bson_append_symbol_n ( b : * mut bson , name : * const :: std :: os :: raw :: c_char , str : * const :: std :: os :: raw :: c_char , len : :: std :: os :: raw :: c_int ) -> :: std :: os :: raw :: c_int ; } extern "C" { # [ doc = " Append code to a bson." ] # [ doc = "" ] # [ doc = " @param b the bson to append to." ] # [ doc = " @param name the key for the code." ] # [ doc = " @param str the code to append." ] # [ doc = " @param len the number of bytes from str to append." ] # [ doc = "" ] # [ doc = " @return BSON_OK or BSON_ERROR." ] pub fn bson_append_code ( b : * mut bson , name : * const :: std :: os :: raw :: c_char , str : * const :: std :: os :: raw :: c_char ) -> :: std :: os :: raw :: c_int ; } extern "C" { # [ doc = " Append len bytes of code to a bson." ] # [ doc = "" ] # [ doc = " @param b the bson to append to." ] # [ doc = " @param name the key for the code." ] # [ doc = " @param str the code to append." ] # [ doc = " @param len the number of bytes from str to append." ] # [ doc = "" ] # [ doc = " @return BSON_OK or BSON_ERROR." ] pub fn bson_append_code_n ( b : * mut bson , name : * const :: std :: os :: raw :: c_char , str : * const :: std :: os :: raw :: c_char , len : :: std :: os :: raw :: c_int ) -> :: std :: os :: raw :: c_int ; } extern "C" { # [ doc = " Append code to a bson with scope." ] # [ doc = "" ] # [ doc = " @param b the bson to append to." ] # [ doc = " @param name the key for the code." ] # [ doc = " @param str the string to append." ] # [ doc = " @param scope a BSON object containing the scope." ] # [ doc = "" ] # [ doc = " @return BSON_OK or BSON_ERROR." ] pub fn bson_append_code_w_scope ( b : * mut bson , name : * const :: std :: os :: raw :: c_char , code : * const :: std :: os :: raw :: c_char , scope : * const bson ) -> :: std :: os :: raw :: c_int ; } extern "C" { # [ doc = " Append len bytes of code to a bson with scope." ] # [ doc = "" ] # [ doc = " @param b the bson to append to." ] # [ doc = " @param name the key for the code." ] # [ doc = " @param str the string to append." ] # [ doc = " @param len the number of bytes from str to append." ] # [ doc = " @param scope a BSON object containing the scope." ] # [ doc = "" ] # [ doc = " @return BSON_OK or BSON_ERROR." ] pub fn bson_append_code_w_scope_n ( b : * mut bson , name : * const :: std :: os :: raw :: c_char , code : * const :: std :: os :: raw :: c_char , size : :: std :: os :: raw :: c_int , scope : * const bson ) -> :: std :: os :: raw :: c_int ; } extern "C" { # [ doc = " Append binary data to a bson." ] # [ doc = "" ] # [ doc = " @param b the bson to append to." ] # [ doc = " @param name the key for the data." ] # [ doc = " @param type the binary data type." ] # [ doc = " @param str the binary data." ] # [ doc = " @param len the length of the data." ] # [ doc = "" ] # [ doc = " @return BSON_OK or BSON_ERROR." ] pub fn bson_append_binary ( b : * mut bson , name : * const :: std :: os :: raw :: c_char , type_ : :: std :: os :: raw :: c_char , str : * const :: std :: os :: raw :: c_char , len : :: std :: os :: raw :: c_int ) -> :: std :: os :: raw :: c_int ; } extern "C" { # [ doc = " Append a bson_bool_t to a bson." ] # [ doc = "" ] # [ doc = " @param b the bson to append to." ] # [ doc = " @param name the key for the boolean value." ] # [ doc = " @param v the bson_bool_t to append." ] # [ doc = "" ] # [ doc = " @return BSON_OK or BSON_ERROR." ] pub fn bson_append_bool ( b : * mut bson , name : * const :: std :: os :: raw :: c_char , v : bson_bool_t ) -> :: std :: os :: raw :: c_int ; } extern "C" { # [ doc = " Append a null value to a bson." ] # [ doc = "" ] # [ doc = " @param b the bson to append to." ] # [ doc = " @param name the key for the null value." ] # [ doc = "" ] # [ doc = " @return BSON_OK or BSON_ERROR." ] pub fn bson_append_null ( b : * mut bson , name : * const :: std :: os :: raw :: c_char ) -> :: std :: os :: raw :: c_int ; } extern "C" { # [ doc = " Append an undefined value to a bson." ] # [ doc = "" ] # [ doc = " @param b the bson to append to." ] # [ doc = " @param name the key for the undefined value." ] # [ doc = "" ] # [ doc = " @return BSON_OK or BSON_ERROR." ] pub fn bson_append_undefined ( b : * mut bson , name : * const :: std :: os :: raw :: c_char ) -> :: std :: os :: raw :: c_int ; } extern "C" { # [ doc = " Append a regex value to a bson." ] # [ doc = "" ] # [ doc = " @param b the bson to append to." ] # [ doc = " @param name the key for the regex value." ] # [ doc = " @param pattern the regex pattern to append." ] # [ doc = " @param the regex options." ] # [ doc = "" ] # [ doc = " @return BSON_OK or BSON_ERROR." ] pub fn bson_append_regex ( b : * mut bson , name : * const :: std :: os :: raw :: c_char , pattern : * const :: std :: os :: raw :: c_char , opts : * const :: std :: os :: raw :: c_char ) -> :: std :: os :: raw :: c_int ; } extern "C" { # [ doc = " Append bson data to a bson." ] # [ doc = "" ] # [ doc = " @param b the bson to append to." ] # [ doc = " @param name the key for the bson data." ] # [ doc = " @param bson the bson object to append." ] # [ doc = "" ] # [ doc = " @return BSON_OK or BSON_ERROR." ] pub fn bson_append_bson ( b : * mut bson , name : * const :: std :: os :: raw :: c_char , bson : * const bson ) -> :: std :: os :: raw :: c_int ; } extern "C" { # [ doc = " Append a BSON element to a bson from the current point of an iterator." ] # [ doc = "" ] # [ doc = " @param b the bson to append to." ] # [ doc = " @param name_or_null the key for the BSON element, or NULL." ] # [ doc = " @param elem the bson_iterator." ] # [ doc = "" ] # [ doc = " @return BSON_OK or BSON_ERROR." ] pub fn bson_append_element ( b : * mut bson , name_or_null : * const :: std :: os :: raw :: c_char , elem : * const bson_iterator ) -> :: std :: os :: raw :: c_int ; } extern "C" { # [ doc = " Append a bson_timestamp_t value to a bson." ] # [ doc = "" ] # [ doc = " @param b the bson to append to." ] # [ doc = " @param name the key for the timestampe value." ] # [ doc = " @param ts the bson_timestamp_t value to append." ] # [ doc = "" ] # [ doc = " @return BSON_OK or BSON_ERROR." ] pub fn bson_append_timestamp ( b : * mut bson , name : * const :: std :: os :: raw :: c_char , ts : * mut bson_timestamp_t ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn bson_append_timestamp2 ( b : * mut bson , name : * const :: std :: os :: raw :: c_char , time : :: std :: os :: raw :: c_int , increment : :: std :: os :: raw :: c_int ) -> :: std :: os :: raw :: c_int ; } extern "C" { # [ doc = " Append a bson_date_t value to a bson." ] # [ doc = "" ] # [ doc = " @param b the bson to append to." ] # [ doc = " @param name the key for the date value." ] # [ doc = " @param millis the bson_date_t to append." ] # [ doc = "" ] # [ doc = " @return BSON_OK or BSON_ERROR." ] pub fn bson_append_date ( b : * mut bson , name : * const :: std :: os :: raw :: c_char , millis : bson_date_t ) -> :: std :: os :: raw :: c_int ; } extern "C" { # [ doc = " Append a time_t value to a bson." ] # [ doc = "" ] # [ doc = " @param b the bson to append to." ] # [ doc = " @param name the key for the date value." ] # [ doc = " @param secs the time_t to append." ] # [ doc = "" ] # [ doc = " @return BSON_OK or BSON_ERROR." ] pub fn bson_append_time_t ( b : * mut bson , name : * const :: std :: os :: raw :: c_char , secs : time_t ) -> :: std :: os :: raw :: c_int ; } extern "C" { # [ doc = " Start appending a new object to a bson." ] # [ doc = "" ] # [ doc = " @param b the bson to append to." ] # [ doc = " @param name the name of the new object." ] # [ doc = "" ] # [ doc = " @return BSON_OK or BSON_ERROR." ] pub fn bson_append_start_object ( b : * mut bson , name : * const :: std :: os :: raw :: c_char ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn bson_append_start_object2 ( b : * mut bson , name : * const :: std :: os :: raw :: c_char , namelen : :: std :: os :: raw :: c_int ) -> :: std :: os :: raw :: c_int ; } extern "C" { # [ doc = " Start appending a new array to a bson." ] # [ doc = "" ] # [ doc = " @param b the bson to append to." ] # [ doc = " @param name the name of the new array." ] # [ doc = "" ] # [ doc = " @return BSON_OK or BSON_ERROR." ] pub fn bson_append_start_array ( b : * mut bson , name : * const :: std :: os :: raw :: c_char ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn bson_append_start_array2 ( b : * mut bson , name : * const :: std :: os :: raw :: c_char , namelen : :: std :: os :: raw :: c_int ) -> :: std :: os :: raw :: c_int ; } extern "C" { # [ doc = " Finish appending a new object or array to a bson." ] # [ doc = "" ] # [ doc = " @param b the bson to append to." ] # [ doc = "" ] # [ doc = " @return BSON_OK or BSON_ERROR." ] pub fn bson_append_finish_object ( b : * mut bson ) -> :: std :: os :: raw :: c_int ; } extern "C" { # [ doc = " Finish appending a new object or array to a bson. This" ] # [ doc = " is simply an alias for bson_append_finish_object." ] # [ doc = "" ] # [ doc = " @param b the bson to append to." ] # [ doc = "" ] # [ doc = " @return BSON_OK or BSON_ERROR." ] pub fn bson_append_finish_array ( b : * mut bson ) -> :: std :: os :: raw :: c_int ; } extern "C" { # [ doc = " Recursive merge bson  `b2` into `b1` saving result the \'out\' object." ] # [ doc = " `b1` & `b2` bson must be finished BSONS." ] # [ doc = " Resulting \'out\' bson must be allocated and not finished." ] # [ doc = "" ] # [ doc = " NOTE. Arrays with same paths joined." ] # [ doc = "" ] # [ doc = " @param b1 BSON to to be merged in `out`" ] # [ doc = " @param b2 Second BSON to to be merged in `out`" ] # [ doc = " @param overwrite if `true` all `b1` fields will be overwriten by corresponding `b2` fields" ] # [ doc = " @param out" ] # [ doc = "" ] # [ doc = " @return BSON_OK or BSON_ERROR." ] pub fn bson_merge_recursive ( b1 : * const bson , b2 : * const bson , overwrite : bson_bool_t , out : * mut bson ) -> :: std :: os :: raw :: c_int ; } extern "C" { # [ doc = " Check duplicate keys" ] # [ doc = " @return true if bson contains duplicate keys" ] pub fn bson_check_duplicate_keys ( bs : * const bson ) -> bson_bool_t ; } extern "C" { # [ doc = " Remove duplicate keys from bson:" ] # [ doc = "  - merge objects and arrays with same key:" ] # [ doc = "   { a : { b : \"value 1\" }, a : { c : \"value 2\" } } -> { a : { b : \"value 1\", c : \"value 2\" } }" ] # [ doc = "  - keep last value for non object and non array values" ] # [ doc = "   { a : \"value 1\", a : \"value 2\" } -> { a : \"value 2\" }" ] # [ doc = "" ] # [ doc = " Example:" ] # [ doc = " {" ] # [ doc = "   a : {" ] # [ doc = "     b : 1," ] # [ doc = "     c : \"c\"" ] # [ doc = "   }," ] # [ doc = "   b : NULL," ] # [ doc = "   c : [" ] # [ doc = "     {" ] # [ doc = "       a : 1," ] # [ doc = "       b : 2," ] # [ doc = "       a : 0" ] # [ doc = "     }," ] # [ doc = "     {" ] # [ doc = "       a : 0," ] # [ doc = "       b : 1," ] # [ doc = "       c : 3" ] # [ doc = "     }" ] # [ doc = "   ]," ] # [ doc = "   a : {" ] # [ doc = "     d : 0," ] # [ doc = "     c : 1" ] # [ doc = "   }" ] # [ doc = " }" ] # [ doc = "" ] # [ doc = " =>" ] # [ doc = "" ] # [ doc = " {" ] # [ doc = "   a : {" ] # [ doc = "     b : 1," ] # [ doc = "     c : 1," ] # [ doc = "     d : 0" ] # [ doc = "   }," ] # [ doc = "   b : NULL," ] # [ doc = "   c : [" ] # [ doc = "     {" ] # [ doc = "       a : 0," ] # [ doc = "       b : 2" ] # [ doc = "     }," ] # [ doc = "     {" ] # [ doc = "       a : 0," ] # [ doc = "b : 1," ] # [ doc = "c : 3" ] # [ doc = "     }" ] # [ doc = "   ]" ] # [ doc = " }" ] pub fn bson_fix_duplicate_keys ( bsi : * const bson , bso : * mut bson ) ; } extern "C" { pub fn bson_numstr ( str : * mut :: std :: os :: raw :: c_char , i : i64 ) ; } extern "C" { pub fn bson_numstrn ( str : * mut :: std :: os :: raw :: c_char , maxbuf : :: std :: os :: raw :: c_int , i : i64 ) -> :: std :: os :: raw :: c_int ; } pub type bson_err_handler = :: std :: option :: Option < unsafe extern "C" fn ( errmsg : * const :: std :: os :: raw :: c_char ) > ; pub type bson_printf_func = :: std :: option :: Option < unsafe extern "C" fn ( arg1 : * const :: std :: os :: raw :: c_char , ... ) -> :: std :: os :: raw :: c_int > ; extern "C" { pub fn bson_free ( ptr : * mut :: std :: os :: raw :: c_void ) ; } extern "C" { # [ doc = " Allocates memory and checks return value, exiting fatally if malloc() fails." ] # [ doc = "" ] # [ doc = " @param size bytes to allocate." ] # [ doc = "" ] # [ doc = " @return a pointer to the allocated memory." ] # [ doc = "" ] # [ doc = " @sa malloc(3)" ] pub fn bson_malloc ( size : :: std :: os :: raw :: c_int ) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { # [ doc = " Changes the size of allocated memory and checks return value," ] # [ doc = " exiting fatally if realloc() fails." ] # [ doc = "" ] # [ doc = " @param ptr pointer to the space to reallocate." ] # [ doc = " @param size bytes to allocate." ] # [ doc = "" ] # [ doc = " @return a pointer to the allocated memory." ] # [ doc = "" ] # [ doc = " @sa realloc()" ] pub fn bson_realloc ( ptr : * mut :: std :: os :: raw :: c_void , size : :: std :: os :: raw :: c_int ) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { # [ doc = " Set a function for error handling." ] # [ doc = "" ] # [ doc = " @param func a bson_err_handler function." ] # [ doc = "" ] # [ doc = " @return the old error handling function, or NULL." ] pub fn set_bson_err_handler ( func : bson_err_handler ) -> bson_err_handler ; } extern "C" { # [ doc = " Exit fatally." ] # [ doc = "" ] # [ doc = " @param ok exits if ok is equal to 0." ] pub fn bson_fatal ( ok : :: std :: os :: raw :: c_int ) ; } extern "C" { # [ doc = " Exit fatally with an error message." ] # [ doc = "" ] # [ doc = " @param ok exits if ok is equal to 0." ] # [ doc = " @param msg prints to stderr before exiting." ] pub fn bson_fatal_msg ( ok : :: std :: os :: raw :: c_int , msg : * const :: std :: os :: raw :: c_char ) ; } extern "C" { # [ doc = " Invoke the error handler, but do not exit." ] # [ doc = "" ] # [ doc = " @param b the buffer object." ] pub fn bson_builder_error ( b : * mut bson ) ; } extern "C" { # [ doc = " Cast an int64_t to double. This is necessary for embedding in" ] # [ doc = " certain environments." ] # [ doc = "" ] pub fn bson_int64_to_double ( i64 : i64 ) -> f64 ; } extern "C" { pub fn bson_swap_endian32 ( outp : * mut :: std :: os :: raw :: c_void , inp : * const :: std :: os :: raw :: c_void ) ; } extern "C" { pub fn bson_swap_endian64 ( outp : * mut :: std :: os :: raw :: c_void , inp : * const :: std :: os :: raw :: c_void ) ; } extern "C" { # [ doc = " Append current field from iterator into bson object." ] # [ doc = "" ] # [ doc = " @param from" ] # [ doc = " @param into" ] # [ doc = " @return BSON_OK or BSON_ERROR." ] pub fn bson_append_field_from_iterator ( from : * const bson_iterator , into : * mut bson ) -> :: std :: os :: raw :: c_int ; } extern "C" { # [ doc = " Append current field value from iterator into bson object under specified string key." ] # [ doc = "" ] # [ doc = " @param key Key name." ] # [ doc = " @param from Source iterator value" ] # [ doc = " @param into Target bsob object" ] # [ doc = " @return BSON_OK or BSON_ERROR." ] pub fn bson_append_field_from_iterator2 ( key : * const :: std :: os :: raw :: c_char , from : * const bson_iterator , into : * mut bson ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn bson_append_object_from_iterator ( key : * const :: std :: os :: raw :: c_char , from : * mut bson_iterator , into : * mut bson ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn bson_append_array_from_iterator ( key : * const :: std :: os :: raw :: c_char , from : * mut bson_iterator , into : * mut bson ) -> :: std :: os :: raw :: c_int ; } extern "C" { # [ doc = " Merge bson  `b2` into `b1` saving result the \'out\' object." ] # [ doc = " `b1` & `b2` bson must be finished BSONS." ] # [ doc = " Resulting \'out\' bson must be allocated and not finished." ] # [ doc = "" ] # [ doc = " Nested object skipped and usupported." ] # [ doc = "" ] # [ doc = " @param b1 BSON to to be merged in `out`" ] # [ doc = " @param b2 Second BSON to to be merged in `out`" ] # [ doc = " @param overwrite if `true` all `b1` fields will be overwriten by corresponding `b2` fields" ] # [ doc = " @param out" ] # [ doc = "" ] # [ doc = " @return BSON_OK or BSON_ERROR." ] pub fn bson_merge ( b1 : * const bson , b2 : * const bson , overwrite : bson_bool_t , out : * mut bson ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn bson_merge2 ( b1data : * const :: std :: os :: raw :: c_void , b2data : * const :: std :: os :: raw :: c_void , overwrite : bson_bool_t , out : * mut bson ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn bson_merge_recursive2 ( b1data : * const :: std :: os :: raw :: c_void , b2data : * const :: std :: os :: raw :: c_void , overwrite : bson_bool_t , out : * mut bson ) -> :: std :: os :: raw :: c_int ; } extern "C" { # [ doc = " Merge bsons." ] # [ doc = " `bsdata2` may contain field path keys (eg: \'foo.bar\')." ] # [ doc = "" ] # [ doc = " @param bsdata1 BSON data to to be merged in `out`" ] # [ doc = " @param bsdata2 Second BSON data to to be merged in `out`" ] # [ doc = " @param out Resulting `out` bson must be allocated and not finished." ] # [ doc = "" ] # [ doc = " @return BSON_OK or BSON_ERROR." ] pub fn bson_merge_fieldpaths ( bsdata1 : * const :: std :: os :: raw :: c_void , bsdata2 : * const :: std :: os :: raw :: c_void , out : * mut bson ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn bson_inplace_set_bool ( pos : * mut bson_iterator , val : bson_bool_t ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn bson_inplace_set_long ( pos : * mut bson_iterator , val : i64 ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn bson_inplace_set_double ( pos : * mut bson_iterator , val : f64 ) -> :: std :: os :: raw :: c_int ; } # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct BSONSTRIPCTX { pub ifields : * mut TCMAP , pub imode : bool , pub bsbuf : * const :: std :: os :: raw :: c_void , pub bsout : * mut bson , pub fkfields : * mut TCMAP , pub matched : :: std :: os :: raw :: c_int , pub collector : * mut bson , } # [ test ] fn bindgen_test_layout_BSONSTRIPCTX ( ) { assert_eq ! ( :: std :: mem :: size_of :: < BSONSTRIPCTX > ( ) , 56usize , concat ! ( "Size of: " , stringify ! ( BSONSTRIPCTX ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < BSONSTRIPCTX > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( BSONSTRIPCTX ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < BSONSTRIPCTX > ( ) ) ) . ifields as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( BSONSTRIPCTX ) , "::" , stringify ! ( ifields ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < BSONSTRIPCTX > ( ) ) ) . imode as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( BSONSTRIPCTX ) , "::" , stringify ! ( imode ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < BSONSTRIPCTX > ( ) ) ) . bsbuf as * const _ as usize } , 16usize , concat ! ( "Offset of field: " , stringify ! ( BSONSTRIPCTX ) , "::" , stringify ! ( bsbuf ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < BSONSTRIPCTX > ( ) ) ) . bsout as * const _ as usize } , 24usize , concat ! ( "Offset of field: " , stringify ! ( BSONSTRIPCTX ) , "::" , stringify ! ( bsout ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < BSONSTRIPCTX > ( ) ) ) . fkfields as * const _ as usize } , 32usize , concat ! ( "Offset of field: " , stringify ! ( BSONSTRIPCTX ) , "::" , stringify ! ( fkfields ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < BSONSTRIPCTX > ( ) ) ) . matched as * const _ as usize } , 40usize , concat ! ( "Offset of field: " , stringify ! ( BSONSTRIPCTX ) , "::" , stringify ! ( matched ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < BSONSTRIPCTX > ( ) ) ) . collector as * const _ as usize } , 48usize , concat ! ( "Offset of field: " , stringify ! ( BSONSTRIPCTX ) , "::" , stringify ! ( collector ) ) ) ; } extern "C" { # [ doc = " Include or exclude fpaths in the specified BSON and put resulting data into `bsout`." ] # [ doc = " On completion it finishes `bsout` object." ] # [ doc = "" ] # [ doc = " @param ifields Map of fieldpaths. Map values are a simple boolean bufs." ] # [ doc = " @param imode If true fpaths will be included. Otherwise fpaths will be excluded from bson." ] # [ doc = " @param bsbuf BSON buffer to process." ] # [ doc = " @param bsout Allocated and not finished output bson* object" ] # [ doc = " @param matched[out] Number of matched include/exclude fieldpaths." ] # [ doc = " @return BSON error code" ] pub fn bson_strip ( ifields : * mut TCMAP , imode : bool , bsbuf : * const :: std :: os :: raw :: c_void , bsout : * mut bson , matched : * mut :: std :: os :: raw :: c_int ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn bson_strip2 ( sctx : * mut BSONSTRIPCTX ) -> :: std :: os :: raw :: c_int ; } extern "C" { # [ doc = " @brief Rename a fields specified by `fields` rename mapping." ] # [ doc = "" ] # [ doc = " This operation unsets both all and new fieldpaths and then sets" ] # [ doc = " new fieldpath values." ] # [ doc = "" ] # [ doc = " @param fields Rename mapping old `fieldpath` to new `fieldpath`." ] # [ doc = " @param bsbuf BSON buffer to process." ] # [ doc = " @param bsout Allocated and not finished output bson* object" ] # [ doc = " @param rencnt A number of fieldpaths actually renamed." ] pub fn bson_rename ( fields : * mut TCMAP , bsbuf : * const :: std :: os :: raw :: c_void , bsout : * mut bson , rencnt : * mut :: std :: os :: raw :: c_int ) -> :: std :: os :: raw :: c_int ; } extern "C" { # [ doc = " Compares field path primitive values of two BSONs" ] # [ doc = " @param bsdata1 BSON raw data" ] # [ doc = " @param bsdata2 BSON raw data" ] # [ doc = " @param fpath Field path to the field" ] # [ doc = " @param fplen Length of fpath value" ] pub fn bson_compare ( bsdata1 : * const :: std :: os :: raw :: c_void , bsdata2 : * const :: std :: os :: raw :: c_void , fpath : * const :: std :: os :: raw :: c_char , fplen : :: std :: os :: raw :: c_int ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn bson_compare_fpaths ( bsdata1 : * const :: std :: os :: raw :: c_void , bsdata2 : * const :: std :: os :: raw :: c_void , fpath1 : * const :: std :: os :: raw :: c_char , fplen1 : :: std :: os :: raw :: c_int , fpath2 : * const :: std :: os :: raw :: c_char , fplen2 : :: std :: os :: raw :: c_int ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn bson_compare_it_current ( it1 : * const bson_iterator , it2 : * const bson_iterator ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn bson_compare_string ( cv : * const :: std :: os :: raw :: c_char , bsdata : * const :: std :: os :: raw :: c_void , fpath : * const :: std :: os :: raw :: c_char ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn bson_compare_long ( cv : i64 , bsdata : * const :: std :: os :: raw :: c_void , fpath : * const :: std :: os :: raw :: c_char ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn bson_compare_double ( cv : f64 , bsdata : * const :: std :: os :: raw :: c_void , fpath : * const :: std :: os :: raw :: c_char ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn bson_compare_bool ( cv : bson_bool_t , bsdata : * const :: std :: os :: raw :: c_void , fpath : * const :: std :: os :: raw :: c_char ) -> :: std :: os :: raw :: c_int ; } extern "C" { # [ doc = " Duplicates BSON object." ] # [ doc = " @param src BSON" ] # [ doc = " @return Finished copy of src" ] pub fn bson_dup ( src : * const bson ) -> * mut bson ; } extern "C" { pub fn bson_create_from_iterator ( from : * mut bson_iterator ) -> * mut bson ; } extern "C" { pub fn bson_create_from_buffer ( buf : * const :: std :: os :: raw :: c_void , bufsz : :: std :: os :: raw :: c_int ) -> * mut bson ; } extern "C" { pub fn bson_create_from_buffer2 ( bs : * mut bson , buf : * const :: std :: os :: raw :: c_void , bufsz : :: std :: os :: raw :: c_int ) -> * mut bson ; } extern "C" { pub fn bson_init_with_data ( bs : * mut bson , bsdata : * const :: std :: os :: raw :: c_void ) ; } pub const bson_merge_array_mode_BSON_MERGE_ARRAY_ADDSET : bson_merge_array_mode = 0 ; pub const bson_merge_array_mode_BSON_MERGE_ARRAY_PULL : bson_merge_array_mode = 1 ; pub const bson_merge_array_mode_BSON_MERGE_ARRAY_PUSH : bson_merge_array_mode = 2 ; pub type bson_merge_array_mode = u32 ; extern "C" { pub fn bson_merge_arrays ( mbuf : * const :: std :: os :: raw :: c_void , inbuf : * const :: std :: os :: raw :: c_void , mode : bson_merge_array_mode , expandall : bool , bsout : * mut bson ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn bson_find_unmerged_arrays ( mbuf : * const :: std :: os :: raw :: c_void , inbuf : * const :: std :: os :: raw :: c_void ) -> bool ; } extern "C" { pub fn bson_find_merged_arrays ( mbuf : * const :: std :: os :: raw :: c_void , inbuf : * const :: std :: os :: raw :: c_void , expandall : bool ) -> bool ; } extern "C" { # [ doc = " Convert BSON into JSON buffer." ] # [ doc = "" ] # [ doc = " A caller should free an allocated `*buf`" ] # [ doc = " if value of `*buf` is not `NULL` after function completion." ] # [ doc = "" ] # [ doc = " @param src BSON data" ] # [ doc = " @param buf Allocated buffer with resulting JSON data" ] # [ doc = " @param sp JSON data length will be stored into" ] # [ doc = " @return BSON_OK or BSON_ERROR" ] pub fn bson2json ( bsdata : * const :: std :: os :: raw :: c_char , buf : * mut * mut :: std :: os :: raw :: c_char , sp : * mut :: std :: os :: raw :: c_int ) -> :: std :: os :: raw :: c_int ; } extern "C" { # [ doc = " Convert JSON into BSON object." ] # [ doc = " @param jsonstr NULL terminated JSON string" ] # [ doc = " @return Allocated BSON object filled with given JSON data or NULL on error" ] pub fn json2bson ( jsonstr : * const :: std :: os :: raw :: c_char ) -> * mut bson ; } extern "C" { # [ doc = " @brief Validate bson object." ] # [ doc = " Set the bs->err bitmask as validation result." ] # [ doc = "" ] # [ doc = " @param bs Bson object to be validated." ] # [ doc = " @param checkdots Check what keys contain dot(.) characters" ] # [ doc = " @param checkdollar Check what keys contain dollar($) characters" ] # [ doc = " @return BSON_OK if all checks passed otherwise return BSON_ERROR" ] pub fn bson_validate ( bs : * mut bson , checkdots : bool , checkdollar : bool ) -> :: std :: os :: raw :: c_int ; } # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct EJDB { _unused : [ u8 ; 0 ] , } # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct EJCOLL { _unused : [ u8 ; 0 ] , } # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct EJQ { _unused : [ u8 ; 0 ] , } # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct EJCOLLOPTS { # [ doc = "< Large collection. It can be larger than 2GB. Default false" ] pub large : bool , # [ doc = "< Collection records will be compressed with DEFLATE compression. Default: false" ] pub compressed : bool , # [ doc = "< Expected records number in the collection. Default: 128K" ] pub records : i64 , # [ doc = "< Maximum number of records cached in memory. Default: 0" ] pub cachedrecords : :: std :: os :: raw :: c_int , } # [ test ] fn bindgen_test_layout_EJCOLLOPTS ( ) { assert_eq ! ( :: std :: mem :: size_of :: < EJCOLLOPTS > ( ) , 24usize , concat ! ( "Size of: " , stringify ! ( EJCOLLOPTS ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < EJCOLLOPTS > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( EJCOLLOPTS ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < EJCOLLOPTS > ( ) ) ) . large as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( EJCOLLOPTS ) , "::" , stringify ! ( large ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < EJCOLLOPTS > ( ) ) ) . compressed as * const _ as usize } , 1usize , concat ! ( "Offset of field: " , stringify ! ( EJCOLLOPTS ) , "::" , stringify ! ( compressed ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < EJCOLLOPTS > ( ) ) ) . records as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( EJCOLLOPTS ) , "::" , stringify ! ( records ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < EJCOLLOPTS > ( ) ) ) . cachedrecords as * const _ as usize } , 16usize , concat ! ( "Offset of field: " , stringify ! ( EJCOLLOPTS ) , "::" , stringify ! ( cachedrecords ) ) ) ; } pub type EJQRESULT = * mut TCLIST ; # [ doc = "< Invalid collection name." ] pub const JBEINVALIDCOLNAME : _bindgen_ty_7 = 9000 ; # [ doc = "< Invalid bson object." ] pub const JBEINVALIDBSON : _bindgen_ty_7 = 9001 ; # [ doc = "< Invalid bson object id." ] pub const JBEINVALIDBSONPK : _bindgen_ty_7 = 9002 ; # [ doc = "< Invalid query control field starting with \'$\'." ] pub const JBEQINVALIDQCONTROL : _bindgen_ty_7 = 9003 ; # [ doc = "< $strand, $stror, $in, $nin, $bt keys requires not empty array value." ] pub const JBEQINOPNOTARRAY : _bindgen_ty_7 = 9004 ; # [ doc = "< Inconsistent database metadata." ] pub const JBEMETANVALID : _bindgen_ty_7 = 9005 ; # [ doc = "< Invalid field path value." ] pub const JBEFPATHINVALID : _bindgen_ty_7 = 9006 ; # [ doc = "< Invalid query regexp value." ] pub const JBEQINVALIDQRX : _bindgen_ty_7 = 9007 ; # [ doc = "< Result set sorting error." ] pub const JBEQRSSORTING : _bindgen_ty_7 = 9008 ; # [ doc = "< Query generic error." ] pub const JBEQERROR : _bindgen_ty_7 = 9009 ; # [ doc = "< Updating failed." ] pub const JBEQUPDFAILED : _bindgen_ty_7 = 9010 ; # [ doc = "< Only one $elemMatch allowed in the fieldpath." ] pub const JBEQONEEMATCH : _bindgen_ty_7 = 9011 ; # [ doc = "< $fields hint cannot mix include and exclude fields" ] pub const JBEQINCEXCL : _bindgen_ty_7 = 9012 ; # [ doc = "< action key in $do block can only be one of: $join, $slice" ] pub const JBEQACTKEY : _bindgen_ty_7 = 9013 ; # [ doc = "< Exceeded the maximum number of collections per database" ] pub const JBEMAXNUMCOLS : _bindgen_ty_7 = 9014 ; # [ doc = "< EJDB export/import error" ] pub const JBEEI : _bindgen_ty_7 = 9015 ; # [ doc = "< JSON parsing failed" ] pub const JBEEJSONPARSE : _bindgen_ty_7 = 9016 ; # [ doc = "< BSON size is too big" ] pub const JBETOOBIGBSON : _bindgen_ty_7 = 9017 ; # [ doc = "< Invalid ejdb command specified" ] pub const JBEINVALIDCMD : _bindgen_ty_7 = 9018 ; pub type _bindgen_ty_7 = u32 ; # [ doc = "< Open as a reader." ] pub const JBOREADER : _bindgen_ty_8 = 1 ; # [ doc = "< Open as a writer." ] pub const JBOWRITER : _bindgen_ty_8 = 2 ; # [ doc = "< Create if db file not exists." ] pub const JBOCREAT : _bindgen_ty_8 = 4 ; # [ doc = "< Truncate db on open." ] pub const JBOTRUNC : _bindgen_ty_8 = 8 ; # [ doc = "< Open without locking." ] pub const JBONOLCK : _bindgen_ty_8 = 16 ; # [ doc = "< Lock without blocking." ] pub const JBOLCKNB : _bindgen_ty_8 = 32 ; # [ doc = "< Synchronize every transaction." ] pub const JBOTSYNC : _bindgen_ty_8 = 64 ; pub type _bindgen_ty_8 = u32 ; # [ doc = "< Drop index." ] pub const JBIDXDROP : _bindgen_ty_9 = 1 ; # [ doc = "< Drop index for all types." ] pub const JBIDXDROPALL : _bindgen_ty_9 = 2 ; # [ doc = "< Optimize indexes." ] pub const JBIDXOP : _bindgen_ty_9 = 4 ; # [ doc = "< Rebuild index." ] pub const JBIDXREBLD : _bindgen_ty_9 = 8 ; # [ doc = "< Number index." ] pub const JBIDXNUM : _bindgen_ty_9 = 16 ; # [ doc = "< String index." ] pub const JBIDXSTR : _bindgen_ty_9 = 32 ; # [ doc = "< Array token index." ] pub const JBIDXARR : _bindgen_ty_9 = 64 ; # [ doc = "< Case insensitive string index" ] pub const JBIDXISTR : _bindgen_ty_9 = 128 ; pub type _bindgen_ty_9 = u32 ; pub const JBQRYCOUNT : _bindgen_ty_10 = 1 ; pub const JBQRYFINDONE : _bindgen_ty_10 = 2 ; pub type _bindgen_ty_10 = u32 ; extern "C" { # [ doc = " Return EJDB library version string. Eg: \"1.1.13\"" ] pub fn ejdbversion ( ) -> * const :: std :: os :: raw :: c_char ; } extern "C" { # [ doc = " Return EJDB database format version." ] # [ doc = "" ] # [ doc = " Format version number uses the following convention:" ] # [ doc = "  100000 * major + 1000 * minor + patch." ] # [ doc = "" ] # [ doc = " Return `0`" ] # [ doc = "  - Database is not opened" ] # [ doc = "  - Database was created by libejdb < v1.2.8 and opened in read-only mode." ] pub fn ejdbformatversion ( jb : * mut EJDB ) -> u32 ; } extern "C" { # [ doc = " Return EJDB database `major` format version." ] # [ doc = "" ] # [ doc = " Return `0`" ] # [ doc = "  - Database is not opened" ] # [ doc = "  - Database was created by libejdb < v1.2.8 and opened in read-only mode." ] pub fn ejdbformatversionmajor ( jb : * mut EJDB ) -> u8 ; } extern "C" { # [ doc = " Return EJDB database `minor` format version." ] # [ doc = "" ] # [ doc = " Return `0`" ] # [ doc = "  - Database is not opened" ] # [ doc = "  - Database was created by libejdb < v1.2.8 and opened in read-only mode." ] pub fn ejdbformatversionminor ( jb : * mut EJDB ) -> u16 ; } extern "C" { # [ doc = " Return EJDB database `patch` format version." ] # [ doc = "" ] # [ doc = " Return `0`" ] # [ doc = "  - Database is not opened" ] # [ doc = "  - Database was created by libejdb < v1.2.8 and opened in read-only mode." ] pub fn ejdbformatversionpatch ( jb : * mut EJDB ) -> u16 ; } extern "C" { # [ doc = " Return true if a passed `oid` string cat be converted to valid" ] # [ doc = " 12 byte BSON object identifier (OID)." ] # [ doc = " @param oid String" ] pub fn ejdbisvalidoidstr ( oid : * const :: std :: os :: raw :: c_char ) -> bool ; } extern "C" { # [ doc = " Get the message string corresponding to an error code." ] # [ doc = " @param ecode `ecode\' specifies the error code." ] # [ doc = " @return The return value is the message string of the error code." ] pub fn ejdberrmsg ( ecode : :: std :: os :: raw :: c_int ) -> * const :: std :: os :: raw :: c_char ; } extern "C" { # [ doc = " Get the last happened error code of a EJDB database object." ] # [ doc = " @param jb" ] # [ doc = " @return The return value is the last happened error code." ] pub fn ejdbecode ( jb : * mut EJDB ) -> :: std :: os :: raw :: c_int ; } extern "C" { # [ doc = " Create a EJDB database object. On error returns NULL." ] # [ doc = " Created pointer must be freed by ejdbdel()" ] # [ doc = " @return The return value is the new EJDB database object or NULL if error." ] pub fn ejdbnew ( ) -> * mut EJDB ; } extern "C" { # [ doc = " Delete database object. If the database is not closed, it is closed implicitly." ] # [ doc = " Note that the deleted object and its derivatives can not be used anymore" ] # [ doc = " @param jb" ] pub fn ejdbdel ( jb : * mut EJDB ) ; } extern "C" { # [ doc = " Close a table database object. If a writer opens a database but does not close it appropriately," ] # [ doc = " the database will be broken." ] # [ doc = " @param jb EJDB handle." ] # [ doc = " @return If successful return true, otherwise return false." ] pub fn ejdbclose ( jb : * mut EJDB ) -> bool ; } extern "C" { # [ doc = " Opens EJDB database." ] # [ doc = " @param jb   Database object created with `ejdbnew\'" ] # [ doc = " @param path Path to the database file." ] # [ doc = " @param mode Open mode bitmask flags:" ] # [ doc = " `JBOREADER` Open as a reader." ] # [ doc = " `JBOWRITER` Open as a writer." ] # [ doc = " `JBOCREAT` Create db if it not exists" ] # [ doc = " `JBOTRUNC` Truncate db." ] # [ doc = " `JBONOLCK` Open without locking." ] # [ doc = " `JBOLCKNB` Lock without blocking." ] # [ doc = " `JBOTSYNC` Synchronize every transaction." ] # [ doc = " @return" ] pub fn ejdbopen ( jb : * mut EJDB , path : * const :: std :: os :: raw :: c_char , mode : :: std :: os :: raw :: c_int ) -> bool ; } extern "C" { # [ doc = " Return true if database is in open state" ] # [ doc = " @param jb EJDB database hadle" ] # [ doc = " @return True if database is in open state otherwise false" ] pub fn ejdbisopen ( jb : * mut EJDB ) -> bool ; } extern "C" { # [ doc = " Retrieve collection handle for collection specified `collname`." ] # [ doc = " If collection with specified name does\'t exists it will return NULL." ] # [ doc = " @param jb EJDB handle." ] # [ doc = " @param colname Name of collection." ] # [ doc = " @return If error NULL will be returned." ] pub fn ejdbgetcoll ( jb : * mut EJDB , colname : * const :: std :: os :: raw :: c_char ) -> * mut EJCOLL ; } extern "C" { # [ doc = " Allocate a new TCLIST populated with shallow copy of all" ] # [ doc = " collection handles (EJCOLL) currently opened." ] # [ doc = " @param jb EJDB handle." ] # [ doc = " @return If error NULL will be returned." ] pub fn ejdbgetcolls ( jb : * mut EJDB ) -> * mut TCLIST ; } extern "C" { # [ doc = " Same as ejdbgetcoll() but automatically creates new collection" ] # [ doc = " if it does\'t exists." ] # [ doc = "" ] # [ doc = " @param jb EJDB handle." ] # [ doc = " @param colname Name of collection." ] # [ doc = " @param opts Options applied only for newly created collection." ] # [ doc = "              For existing collections it takes no effect." ] # [ doc = "" ] # [ doc = " @return Collection handle or NULL if error." ] pub fn ejdbcreatecoll ( jb : * mut EJDB , colname : * const :: std :: os :: raw :: c_char , opts : * mut EJCOLLOPTS ) -> * mut EJCOLL ; } extern "C" { # [ doc = " Removes collections specified by `colname`" ] # [ doc = " @param jb EJDB handle." ] # [ doc = " @param colname Name of collection." ] # [ doc = " @param unlink It true the collection db file and all of its index files will be removed." ] # [ doc = " @return If successful return true, otherwise return false." ] pub fn ejdbrmcoll ( jb : * mut EJDB , colname : * const :: std :: os :: raw :: c_char , unlinkfile : bool ) -> bool ; } extern "C" { # [ doc = " Persist BSON object in the collection." ] # [ doc = " If saved bson does\'t have _id primary key then `oid` will be set to generated bson _id," ] # [ doc = " otherwise `oid` will be set to the current bson\'s _id field." ] # [ doc = "" ] # [ doc = " NOTE: Field names of passed `bs` object may not contain `$` and `.` characters," ] # [ doc = "       error condition will be fired in this case." ] # [ doc = "" ] # [ doc = " @param coll JSON collection handle." ] # [ doc = " @param bson BSON object id pointer." ] # [ doc = " @param oid OID pointer will be set to object\'s _id" ] # [ doc = " @return If successful return true, otherwise return false." ] pub fn ejdbsavebson ( coll : * mut EJCOLL , bs : * mut bson , oid : * mut bson_oid_t ) -> bool ; } extern "C" { # [ doc = " Persist BSON object in the collection." ] # [ doc = " If saved bson does\'t have _id primary key then `oid` will be set to generated bson _id," ] # [ doc = " otherwise `oid` will be set to the current bson\'s _id field." ] # [ doc = "" ] # [ doc = " NOTE: Field names of passed `bs` object may not contain `$` and `.` characters," ] # [ doc = "       error condition will be fired in this case." ] # [ doc = "" ] # [ doc = " @param coll JSON collection handle." ] # [ doc = " @param bs BSON object id pointer." ] # [ doc = " @param oid OID pointer will be set to object\'s _id" ] # [ doc = " @param merge If true the merge will be performend with old and new objects. Otherwise old object will be replaced." ] # [ doc = " @return If successful return true, otherwise return false." ] pub fn ejdbsavebson2 ( jcoll : * mut EJCOLL , bs : * mut bson , oid : * mut bson_oid_t , merge : bool ) -> bool ; } extern "C" { pub fn ejdbsavebson3 ( jcoll : * mut EJCOLL , bsdata : * const :: std :: os :: raw :: c_void , oid : * mut bson_oid_t , merge : bool ) -> bool ; } extern "C" { # [ doc = " Remove BSON object from collection." ] # [ doc = " The `oid` argument should points the primary key (_id)" ] # [ doc = " of the bson record to be removed." ] # [ doc = " @param coll JSON collection ref." ] # [ doc = " @param oid BSON object id pointer." ] # [ doc = " @return" ] pub fn ejdbrmbson ( coll : * mut EJCOLL , oid : * mut bson_oid_t ) -> bool ; } extern "C" { # [ doc = " Load BSON object with specified \'oid\'." ] # [ doc = " If loaded bson is not NULL it must be freed by bson_del()." ] # [ doc = " @param coll" ] # [ doc = " @param oid" ] # [ doc = " @return BSON object if exists otherwise return NULL." ] pub fn ejdbloadbson ( coll : * mut EJCOLL , oid : * const bson_oid_t ) -> * mut bson ; } extern "C" { # [ doc = " Create the query object." ] # [ doc = "" ] # [ doc = " Sucessfully created queries must be destroyed with ejdbquerydel()." ] # [ doc = "" ] # [ doc = " See the complete query language specification:" ] # [ doc = "" ] # [ doc = "      http://ejdb.org/doc/ql/ql.html" ] # [ doc = "" ] # [ doc = " Many query examples can be found in `src/ejdb/test/ejdbtest2.c` test case." ] # [ doc = "" ] # [ doc = " @param jb EJDB database handle." ] # [ doc = " @param qobj Main BSON query object." ] # [ doc = " @param orqobjs Array of additional OR query objects (joined with OR predicate)." ] # [ doc = " @param orqobjsnum Number of OR query objects." ] # [ doc = " @param hints BSON object with query hints." ] # [ doc = " @return On success return query handle. On error returns NULL." ] pub fn ejdbcreatequery ( jb : * mut EJDB , qobj : * mut bson , orqobjs : * mut bson , orqobjsnum : :: std :: os :: raw :: c_int , hints : * mut bson ) -> * mut EJQ ; } extern "C" { # [ doc = " Alternative query creation method convenient to use" ] # [ doc = " with `ejdbqueryaddor` and `ejdbqueryhints` methods." ] # [ doc = " @param jb EJDB database handle." ] # [ doc = " @param qobj Main query object BSON data." ] # [ doc = " @return On success return query handle. On error returns NULL." ] pub fn ejdbcreatequery2 ( jb : * mut EJDB , qbsdata : * const :: std :: os :: raw :: c_void ) -> * mut EJQ ; } extern "C" { # [ doc = " Add OR restriction to query object." ] # [ doc = " @param jb EJDB database handle." ] # [ doc = " @param q Query handle." ] # [ doc = " @param orbsdata OR restriction BSON data." ] # [ doc = " @return NULL on error." ] pub fn ejdbqueryaddor ( jb : * mut EJDB , q : * mut EJQ , orbsdata : * const :: std :: os :: raw :: c_void ) -> * mut EJQ ; } extern "C" { # [ doc = " Set hints for the query." ] # [ doc = " @param jb EJDB database handle." ] # [ doc = " @param hintsbsdata Query hints BSON data." ] # [ doc = " @return NULL on error." ] pub fn ejdbqueryhints ( jb : * mut EJDB , q : * mut EJQ , hintsbsdata : * const :: std :: os :: raw :: c_void ) -> * mut EJQ ; } extern "C" { # [ doc = " Destroy query object created with ejdbcreatequery()." ] # [ doc = " @param q" ] pub fn ejdbquerydel ( q : * mut EJQ ) ; } extern "C" { # [ doc = " Set index for JSON field in EJDB collection." ] # [ doc = "" ] # [ doc = "  - Available index types:" ] # [ doc = "      - `JBIDXSTR` String index for JSON string values." ] # [ doc = "      - `JBIDXISTR` Case insensitive string index for JSON string values." ] # [ doc = "      - `JBIDXNUM` Index for JSON number values." ] # [ doc = "      - `JBIDXARR` Token index for JSON arrays and string values." ] # [ doc = "" ] # [ doc = "  - One JSON field can have several indexes for different types." ] # [ doc = "" ] # [ doc = "  - Available index operations:" ] # [ doc = "      - `JBIDXDROP` Drop index of specified type." ] # [ doc = "              - Eg: flag = JBIDXDROP | JBIDXNUM (Drop number index)" ] # [ doc = "      - `JBIDXDROPALL` Drop index for all types." ] # [ doc = "      - `JBIDXREBLD` Rebuild index of specified type." ] # [ doc = "      - `JBIDXOP` Optimize index of specified type. (Optimize the B+ tree index file)" ] # [ doc = "" ] # [ doc = "  Examples:" ] # [ doc = "      - Set index for JSON path `addressbook.number` for strings and numbers:" ] # [ doc = "          `ejdbsetindex(ccoll, \"album.number\", JBIDXSTR | JBIDXNUM)`" ] # [ doc = "      - Set index for array:" ] # [ doc = "          `ejdbsetindex(ccoll, \"album.tags\", JBIDXARR)`" ] # [ doc = "      - Rebuild previous index:" ] # [ doc = "          `ejdbsetindex(ccoll, \"album.tags\", JBIDXARR | JBIDXREBLD)`" ] # [ doc = "" ] # [ doc = "   Many index examples can be found in `testejdb/t2.c` test case." ] # [ doc = "" ] # [ doc = " @param coll Collection handle." ] # [ doc = " @param ipath BSON field path." ] # [ doc = " @param flags Index flags." ] # [ doc = " @return" ] pub fn ejdbsetindex ( coll : * mut EJCOLL , ipath : * const :: std :: os :: raw :: c_char , flags : :: std :: os :: raw :: c_int ) -> bool ; } extern "C" { # [ doc = " Execute the query against EJDB collection." ] # [ doc = " It is better to execute update queries with specified `JBQRYCOUNT` control" ] # [ doc = " flag avoid unnecessarily rows fetching." ] # [ doc = "" ] # [ doc = " @param jcoll EJDB database" ] # [ doc = " @param q Query handle created with ejdbcreatequery()" ] # [ doc = " @param count Output count pointer. Result set size will be stored into it." ] # [ doc = " @param qflags Execution flag." ] # [ doc = "          * `JBQRYCOUNT` The only count of matching records will be computed" ] # [ doc = "                         without resultset, this operation is analog of count(*)" ] # [ doc = "                         in SQL and can be faster than operations with resultsets." ] # [ doc = " @param log Optional extended string to collect debug information during query execution, can be NULL." ] # [ doc = " @return TCLIST with matched bson records data." ] # [ doc = " If (qflags & JBQRYCOUNT) then NULL will be returned" ] # [ doc = " and only count reported." ] pub fn ejdbqryexecute ( jcoll : * mut EJCOLL , q : * const EJQ , count : * mut u32 , qflags : :: std :: os :: raw :: c_int , log : * mut TCXSTR ) -> EJQRESULT ; } extern "C" { # [ doc = " Returns the number of elements in the query result set." ] # [ doc = " @param qr Query result set. Can be `NULL` in this case 0 is returned." ] pub fn ejdbqresultnum ( qr : EJQRESULT ) -> :: std :: os :: raw :: c_int ; } extern "C" { # [ doc = " Gets the pointer of query result BSON data buffer at the specified position `pos`." ] # [ doc = " If `qr` is `NULL` or `idx` is put of index range then the `NULL` pointer will be returned." ] # [ doc = " @param qr Query result set object." ] # [ doc = " @param pos Zero based position of the record." ] pub fn ejdbqresultbsondata ( qr : EJQRESULT , pos : :: std :: os :: raw :: c_int , size : * mut :: std :: os :: raw :: c_int ) -> * const :: std :: os :: raw :: c_void ; } extern "C" { # [ doc = " Disposes the query result set and frees a records buffers." ] pub fn ejdbqresultdispose ( qr : EJQRESULT ) ; } extern "C" { # [ doc = " Convenient method to execute update queries." ] # [ doc = "" ] # [ doc = " See the complete query language specification:" ] # [ doc = "" ] # [ doc = "      http://ejdb.org/doc/ql/ql.html" ] # [ doc = "" ] # [ doc = "" ] # [ doc = " @return Number of updated records" ] pub fn ejdbupdate ( jcoll : * mut EJCOLL , qobj : * mut bson , orqobjs : * mut bson , orqobjsnum : :: std :: os :: raw :: c_int , hints : * mut bson , log : * mut TCXSTR ) -> u32 ; } extern "C" { # [ doc = " Provides \'distinct\' operation over query" ] # [ doc = "" ] # [ doc = " (http://docs.mongodb.org/manual/reference/method/db.collection.distinct/)." ] # [ doc = "" ] # [ doc = " @param jcoll EJDB database collection handle." ] # [ doc = " @param fpath Field path to collect distinct values from." ] # [ doc = " @param qobj Main BSON query object." ] # [ doc = " @param orqobjs Array of additional OR query objects (joined with OR predicate)." ] # [ doc = " @param orqobjsnum Number of OR query objects." ] # [ doc = "" ] # [ doc = " NOTE: Queries with update instruction not supported." ] # [ doc = "" ] # [ doc = " @return Unique values by specified path and query (as BSON array)" ] pub fn ejdbqrydistinct ( jcoll : * mut EJCOLL , fpath : * const :: std :: os :: raw :: c_char , qobj : * mut bson , orqobjs : * mut bson , orqobjsnum : :: std :: os :: raw :: c_int , count : * mut u32 , log : * mut TCXSTR ) -> * mut bson ; } extern "C" { # [ doc = " Synchronize content of a EJDB collection database with the file on device." ] # [ doc = " @param jcoll EJDB collection." ] # [ doc = " @return On success return true." ] pub fn ejdbsyncoll ( jcoll : * mut EJCOLL ) -> bool ; } extern "C" { # [ doc = " Synchronize entire EJDB database and" ] # [ doc = " all of its collections with storage." ] # [ doc = " @param jb Database hand" ] pub fn ejdbsyncdb ( jb : * mut EJDB ) -> bool ; } extern "C" { # [ doc = " Begin transaction for EJDB collection." ] pub fn ejdbtranbegin ( coll : * mut EJCOLL ) -> bool ; } extern "C" { # [ doc = " Commit transaction for EJDB collection." ] pub fn ejdbtrancommit ( coll : * mut EJCOLL ) -> bool ; } extern "C" { # [ doc = " Abort transaction for EJDB collection." ] pub fn ejdbtranabort ( coll : * mut EJCOLL ) -> bool ; } extern "C" { # [ doc = " Get current transaction status, it will be placed into txActive" ] pub fn ejdbtranstatus ( jcoll : * mut EJCOLL , txactive : * mut bool ) -> bool ; } extern "C" { # [ doc = " Gets description of EJDB database and its collections." ] pub fn ejdbmeta ( jb : * mut EJDB ) -> * mut bson ; } pub const JBJSONEXPORT : _bindgen_ty_11 = 1 ; pub const JBIMPORTUPDATE : _bindgen_ty_11 = 2 ; pub const JBIMPORTREPLACE : _bindgen_ty_11 = 4 ; # [ doc = " Export/Import settings used in `ejdbexport()` and `ejdbimport()` functions." ] pub type _bindgen_ty_11 = u32 ; extern "C" { # [ doc = " Exports database collections data to the specified directory." ] # [ doc = " Database read lock will be taken on each collection." ] # [ doc = "" ] # [ doc = " NOTE: Only data exported as BSONs can be imported with `ejdbimport()`" ] # [ doc = "" ] # [ doc = " @param jb EJDB database handle." ] # [ doc = " @param path The directory path in which data will be exported." ] # [ doc = " @param cnames List of collection names to export. `NULL` implies that all existing collections will be exported." ] # [ doc = " @param flags. Can be set to `JBJSONEXPORT` in order to export data as JSON files instead exporting into BSONs." ] # [ doc = " @param log Optional operation string log buffer." ] # [ doc = " @return on sucess `true`" ] pub fn ejdbexport ( jb : * mut EJDB , path : * const :: std :: os :: raw :: c_char , cnames : * mut TCLIST , flags : :: std :: os :: raw :: c_int , log : * mut TCXSTR ) -> bool ; } extern "C" { # [ doc = " Imports previously exported collections data into ejdb." ] # [ doc = " Global database write lock will be applied during import operation." ] # [ doc = "" ] # [ doc = " NOTE: Only data exported as BSONs can be imported with `ejdbimport()`" ] # [ doc = "" ] # [ doc = " @param jb EJDB database handle." ] # [ doc = " @param path The directory path in which data resides." ] # [ doc = " @param cnames List of collection names to import. `NULL` implies that all collections found in `path` will be imported." ] # [ doc = " @param flags Can be one of:" ] # [ doc = "             `JBIMPORTUPDATE`  Update existing collection entries with imported ones." ] # [ doc = "                               Existing collections will not be recreated." ] # [ doc = "                               For existing collections options will not be imported." ] # [ doc = "" ] # [ doc = "             `JBIMPORTREPLACE` Recreate existing collections and replace" ] # [ doc = "                               all their data with imported entries." ] # [ doc = "                               Collections options will be imported." ] # [ doc = "" ] # [ doc = "             `0`              Implies `JBIMPORTUPDATE`" ] # [ doc = " @param log Optional operation log buffer." ] # [ doc = " @return" ] pub fn ejdbimport ( jb : * mut EJDB , path : * const :: std :: os :: raw :: c_char , cnames : * mut TCLIST , flags : :: std :: os :: raw :: c_int , log : * mut TCXSTR ) -> bool ; } extern "C" { # [ doc = " Execute the ejdb database command." ] # [ doc = "" ] # [ doc = " Supported commands:" ] # [ doc = "" ] # [ doc = "" ] # [ doc = "  1) Exports database collections data. See ejdbexport() method." ] # [ doc = "" ] # [ doc = "    \"export\" : {" ] # [ doc = "          \"path\" : string,                    //Export files target directory" ] # [ doc = "          \"cnames\" : [string array]|null,     //List of collection names to export" ] # [ doc = "          \"mode\" : int|null                   //Values: null|`JBJSONEXPORT` See ejdbexport() method" ] # [ doc = "    }" ] # [ doc = "" ] # [ doc = "    Command response:" ] # [ doc = "       {" ] # [ doc = "          \"log\" : string,        //Diagnostic log about executing this command" ] # [ doc = "          \"error\" : string|null, //ejdb error message" ] # [ doc = "          \"errorCode\" : int|0,   //ejdb error code" ] # [ doc = "       }" ] # [ doc = "" ] # [ doc = "  2) Imports previously exported collections data into ejdb." ] # [ doc = "" ] # [ doc = "    \"import\" : {" ] # [ doc = "          \"path\" : string                  //Import files source directory" ] # [ doc = "          \"cnames\" : [string array]|null,  //List of collection names to import" ] # [ doc = "          \"mode\" : int|null                //Values: null|`JBIMPORTUPDATE`|`JBIMPORTREPLACE` See ejdbimport() method" ] # [ doc = "     }" ] # [ doc = "" ] # [ doc = "     Command response:" ] # [ doc = "       {" ] # [ doc = "          \"log\" : string,        //Diagnostic log about executing this command" ] # [ doc = "          \"error\" : string|null, //ejdb error message" ] # [ doc = "          \"errorCode\" : int|0,   //ejdb error code" ] # [ doc = "       }" ] # [ doc = "" ] # [ doc = " @param jb    EJDB database handle." ] # [ doc = " @param cmd   BSON command spec." ] # [ doc = " @return Allocated command response BSON object. Caller should call `bson_del()` on it." ] pub fn ejdbcommand ( jb : * mut EJDB , cmdbson : * mut bson ) -> * mut bson ; } extern "C" { pub fn ejdbcommand2 ( jb : * mut EJDB , cmdbsondata : * mut :: std :: os :: raw :: c_void ) -> * mut bson ; } pub type __builtin_va_list = [ __va_list_tag ; 1usize ] ; # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct __va_list_tag { pub gp_offset : :: std :: os :: raw :: c_uint , pub fp_offset : :: std :: os :: raw :: c_uint , pub overflow_arg_area : * mut :: std :: os :: raw :: c_void , pub reg_save_area : * mut :: std :: os :: raw :: c_void , } # [ test ] fn bindgen_test_layout___va_list_tag ( ) { assert_eq ! ( :: std :: mem :: size_of :: < __va_list_tag > ( ) , 24usize , concat ! ( "Size of: " , stringify ! ( __va_list_tag ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < __va_list_tag > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( __va_list_tag ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __va_list_tag > ( ) ) ) . gp_offset as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( __va_list_tag ) , "::" , stringify ! ( gp_offset ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __va_list_tag > ( ) ) ) . fp_offset as * const _ as usize } , 4usize , concat ! ( "Offset of field: " , stringify ! ( __va_list_tag ) , "::" , stringify ! ( fp_offset ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __va_list_tag > ( ) ) ) . overflow_arg_area as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( __va_list_tag ) , "::" , stringify ! ( overflow_arg_area ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __va_list_tag > ( ) ) ) . reg_save_area as * const _ as usize } , 16usize , concat ! ( "Offset of field: " , stringify ! ( __va_list_tag ) , "::" , stringify ! ( reg_save_area ) ) ) ; } # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct __locale_data { pub _address : u8 , }