1
2
3
4
5
6
/* automatically generated by rust-bindgen */

pub const _STDINT_H : ::libc :: c_uint = 1 ; pub const _FEATURES_H : ::libc :: c_uint = 1 ; pub const _DEFAULT_SOURCE : ::libc :: c_uint = 1 ; pub const __USE_ISOC11 : ::libc :: c_uint = 1 ; pub const __USE_ISOC99 : ::libc :: c_uint = 1 ; pub const __USE_ISOC95 : ::libc :: c_uint = 1 ; pub const __USE_POSIX_IMPLICITLY : ::libc :: c_uint = 1 ; pub const _POSIX_SOURCE : ::libc :: c_uint = 1 ; pub const _POSIX_C_SOURCE : ::libc :: c_uint = 200809 ; pub const __USE_POSIX : ::libc :: c_uint = 1 ; pub const __USE_POSIX2 : ::libc :: c_uint = 1 ; pub const __USE_POSIX199309 : ::libc :: c_uint = 1 ; pub const __USE_POSIX199506 : ::libc :: c_uint = 1 ; pub const __USE_XOPEN2K : ::libc :: c_uint = 1 ; pub const __USE_XOPEN2K8 : ::libc :: c_uint = 1 ; pub const _ATFILE_SOURCE : ::libc :: c_uint = 1 ; pub const __USE_MISC : ::libc :: c_uint = 1 ; pub const __USE_ATFILE : ::libc :: c_uint = 1 ; pub const __USE_FORTIFY_LEVEL : ::libc :: c_uint = 0 ; pub const _STDC_PREDEF_H : ::libc :: c_uint = 1 ; pub const __STDC_IEC_559__ : ::libc :: c_uint = 1 ; pub const __STDC_IEC_559_COMPLEX__ : ::libc :: c_uint = 1 ; pub const __STDC_ISO_10646__ : ::libc :: c_uint = 201605 ; pub const __STDC_NO_THREADS__ : ::libc :: c_uint = 1 ; pub const __GNU_LIBRARY__ : ::libc :: c_uint = 6 ; pub const __GLIBC__ : ::libc :: c_uint = 2 ; pub const __GLIBC_MINOR__ : ::libc :: c_uint = 24 ; pub const _SYS_CDEFS_H : ::libc :: c_uint = 1 ; pub const __WORDSIZE : ::libc :: c_uint = 64 ; pub const __WORDSIZE_TIME64_COMPAT32 : ::libc :: c_uint = 1 ; pub const __SYSCALL_WORDSIZE : ::libc :: c_uint = 64 ; pub const _BITS_WCHAR_H : ::libc :: c_uint = 1 ; pub const INT8_MIN : ::libc :: c_int = -128 ; pub const INT16_MIN : ::libc :: c_int = -32768 ; pub const INT32_MIN : ::libc :: c_int = -2147483648 ; pub const INT8_MAX : ::libc :: c_uint = 127 ; pub const INT16_MAX : ::libc :: c_uint = 32767 ; pub const INT32_MAX : ::libc :: c_uint = 2147483647 ; pub const UINT8_MAX : ::libc :: c_uint = 255 ; pub const UINT16_MAX : ::libc :: c_uint = 65535 ; pub const UINT32_MAX : ::libc :: c_uint = 4294967295 ; pub const INT_LEAST8_MIN : ::libc :: c_int = -128 ; pub const INT_LEAST16_MIN : ::libc :: c_int = -32768 ; pub const INT_LEAST32_MIN : ::libc :: c_int = -2147483648 ; pub const INT_LEAST8_MAX : ::libc :: c_uint = 127 ; pub const INT_LEAST16_MAX : ::libc :: c_uint = 32767 ; pub const INT_LEAST32_MAX : ::libc :: c_uint = 2147483647 ; pub const UINT_LEAST8_MAX : ::libc :: c_uint = 255 ; pub const UINT_LEAST16_MAX : ::libc :: c_uint = 65535 ; pub const UINT_LEAST32_MAX : ::libc :: c_uint = 4294967295 ; pub const INT_FAST8_MIN : ::libc :: c_int = -128 ; pub const INT_FAST16_MIN : ::libc :: c_longlong = -9223372036854775808 ; pub const INT_FAST32_MIN : ::libc :: c_longlong = -9223372036854775808 ; pub const INT_FAST8_MAX : ::libc :: c_uint = 127 ; pub const INT_FAST16_MAX : ::libc :: c_ulonglong = 9223372036854775807 ; pub const INT_FAST32_MAX : ::libc :: c_ulonglong = 9223372036854775807 ; pub const UINT_FAST8_MAX : ::libc :: c_uint = 255 ; pub const UINT_FAST16_MAX : ::libc :: c_int = -1 ; pub const UINT_FAST32_MAX : ::libc :: c_int = -1 ; pub const INTPTR_MIN : ::libc :: c_longlong = -9223372036854775808 ; pub const INTPTR_MAX : ::libc :: c_ulonglong = 9223372036854775807 ; pub const UINTPTR_MAX : ::libc :: c_int = -1 ; pub const PTRDIFF_MIN : ::libc :: c_longlong = -9223372036854775808 ; pub const PTRDIFF_MAX : ::libc :: c_ulonglong = 9223372036854775807 ; pub const SIG_ATOMIC_MIN : ::libc :: c_int = -2147483648 ; pub const SIG_ATOMIC_MAX : ::libc :: c_uint = 2147483647 ; pub const SIZE_MAX : ::libc :: c_int = -1 ; pub const WINT_MIN : ::libc :: c_uint = 0 ; pub const WINT_MAX : ::libc :: c_uint = 4294967295 ; pub const true_ : ::libc :: c_uint = 1 ; pub const false_ : ::libc :: c_uint = 0 ; pub const __bool_true_false_are_defined : ::libc :: c_uint = 1 ; pub type int_least8_t = ::libc :: c_schar ; pub type int_least16_t = ::libc :: c_short ; pub type int_least32_t = ::libc :: c_int ; pub type int_least64_t = ::libc :: c_long ; pub type uint_least8_t = ::libc :: c_uchar ; pub type uint_least16_t = ::libc :: c_ushort ; pub type uint_least32_t = ::libc :: c_uint ; pub type uint_least64_t = ::libc :: c_ulong ; pub type int_fast8_t = ::libc :: c_schar ; pub type int_fast16_t = ::libc :: c_long ; pub type int_fast32_t = ::libc :: c_long ; pub type int_fast64_t = ::libc :: c_long ; pub type uint_fast8_t = ::libc :: c_uchar ; pub type uint_fast16_t = ::libc :: c_ulong ; pub type uint_fast32_t = ::libc :: c_ulong ; pub type uint_fast64_t = ::libc :: c_ulong ; pub type intmax_t = ::libc :: c_long ; pub type uintmax_t = ::libc :: c_ulong ; pub type wchar_t = ::libc :: c_int ; pub type max_align_t = f64 ; pub type emacs_finalizer_function = :: std :: option :: Option < unsafe extern "C" fn ( arg1 : * mut ::libc :: c_void ) > ; pub type emacs_env = emacs_env_25 ; # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct emacs_value_tag { _unused : [ u8 ; 0 ] } pub type emacs_value = * mut emacs_value_tag ; pub const emacs_arity_emacs_variadic_function : emacs_arity = -2 ; pub type emacs_arity = ::libc :: c_int ; # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct emacs_runtime { pub size : isize , pub private_members : * mut emacs_runtime_private , pub get_environment : :: std :: option :: Option < unsafe extern "C" fn ( ert : * mut emacs_runtime ) -> * mut emacs_env > , } # [ test ] fn bindgen_test_layout_emacs_runtime ( ) { assert_eq ! ( :: std :: mem :: size_of :: < emacs_runtime > ( ) , 24usize , concat ! ( "Size of: " , stringify ! ( emacs_runtime ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < emacs_runtime > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( emacs_runtime ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < emacs_runtime > ( ) ) ) . size as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( emacs_runtime ) , "::" , stringify ! ( size ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < emacs_runtime > ( ) ) ) . private_members as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( emacs_runtime ) , "::" , stringify ! ( private_members ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < emacs_runtime > ( ) ) ) . get_environment as * const _ as usize } , 16usize , concat ! ( "Offset of field: " , stringify ! ( emacs_runtime ) , "::" , stringify ! ( get_environment ) ) ) ; } pub type emacs_init_function = :: std :: option :: Option < unsafe extern "C" fn ( ert : * mut emacs_runtime ) -> ::libc :: c_int > ; pub type emacs_subr = :: std :: option :: Option < unsafe extern "C" fn ( env : * mut emacs_env , nargs : isize , args : * mut emacs_value , data : * mut ::libc :: c_void ) -> emacs_value > ; pub const emacs_funcall_exit_emacs_funcall_exit_return : emacs_funcall_exit = 0 ; pub const emacs_funcall_exit_emacs_funcall_exit_signal : emacs_funcall_exit = 1 ; pub const emacs_funcall_exit_emacs_funcall_exit_throw : emacs_funcall_exit = 2 ; pub type emacs_funcall_exit = ::libc :: c_uint ; # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct emacs_env_25 { pub size : isize , pub private_members : * mut emacs_env_private , pub make_global_ref : :: std :: option :: Option < unsafe extern "C" fn ( env : * mut emacs_env , any_reference : emacs_value ) -> emacs_value > , pub free_global_ref : :: std :: option :: Option < unsafe extern "C" fn ( env : * mut emacs_env , global_reference : emacs_value ) > , pub non_local_exit_check : :: std :: option :: Option < unsafe extern "C" fn ( env : * mut emacs_env ) -> emacs_funcall_exit > , pub non_local_exit_clear : :: std :: option :: Option < unsafe extern "C" fn ( env : * mut emacs_env ) > , pub non_local_exit_get : :: std :: option :: Option < unsafe extern "C" fn ( env : * mut emacs_env , non_local_exit_symbol_out : * mut emacs_value , non_local_exit_data_out : * mut emacs_value ) -> emacs_funcall_exit > , pub non_local_exit_signal : :: std :: option :: Option < unsafe extern "C" fn ( env : * mut emacs_env , non_local_exit_symbol : emacs_value , non_local_exit_data : emacs_value ) > , pub non_local_exit_throw : :: std :: option :: Option < unsafe extern "C" fn ( env : * mut emacs_env , tag : emacs_value , value : emacs_value ) > , pub make_function : :: std :: option :: Option < unsafe extern "C" fn ( env : * mut emacs_env , min_arity : isize , max_arity : isize , function : :: std :: option :: Option < unsafe extern "C" fn ( env : * mut emacs_env , nargs : isize , args : * mut emacs_value , arg1 : * mut ::libc :: c_void ) -> emacs_value > , documentation : * const ::libc :: c_char , data : * mut ::libc :: c_void ) -> emacs_value > , pub funcall : :: std :: option :: Option < unsafe extern "C" fn ( env : * mut emacs_env , function : emacs_value , nargs : isize , args : * mut emacs_value ) -> emacs_value > , pub intern : :: std :: option :: Option < unsafe extern "C" fn ( env : * mut emacs_env , symbol_name : * const ::libc :: c_char ) -> emacs_value > , pub type_of : :: std :: option :: Option < unsafe extern "C" fn ( env : * mut emacs_env , value : emacs_value ) -> emacs_value > , pub is_not_nil : :: std :: option :: Option < unsafe extern "C" fn ( env : * mut emacs_env , value : emacs_value ) -> bool > , pub eq : :: std :: option :: Option < unsafe extern "C" fn ( env : * mut emacs_env , a : emacs_value , b : emacs_value ) -> bool > , pub extract_integer : :: std :: option :: Option < unsafe extern "C" fn ( env : * mut emacs_env , value : emacs_value ) -> intmax_t > , pub make_integer : :: std :: option :: Option < unsafe extern "C" fn ( env : * mut emacs_env , value : intmax_t ) -> emacs_value > , pub extract_float : :: std :: option :: Option < unsafe extern "C" fn ( env : * mut emacs_env , value : emacs_value ) -> f64 > , pub make_float : :: std :: option :: Option < unsafe extern "C" fn ( env : * mut emacs_env , value : f64 ) -> emacs_value > , pub copy_string_contents : :: std :: option :: Option < unsafe extern "C" fn ( env : * mut emacs_env , value : emacs_value , buffer : * mut ::libc :: c_char , size_inout : * mut isize ) -> bool > , pub make_string : :: std :: option :: Option < unsafe extern "C" fn ( env : * mut emacs_env , contents : * const ::libc :: c_char , length : isize ) -> emacs_value > , pub make_user_ptr : :: std :: option :: Option < unsafe extern "C" fn ( env : * mut emacs_env , fin : emacs_finalizer_function , ptr : * mut ::libc :: c_void ) -> emacs_value > , pub get_user_ptr : :: std :: option :: Option < unsafe extern "C" fn ( env : * mut emacs_env , uptr : emacs_value ) -> * mut ::libc :: c_void > , pub set_user_ptr : :: std :: option :: Option < unsafe extern "C" fn ( env : * mut emacs_env , uptr : emacs_value , ptr : * mut ::libc :: c_void ) > , pub get_user_finalizer : :: std :: option :: Option < unsafe extern "C" fn ( env : * mut emacs_env , uptr : emacs_value ) -> emacs_finalizer_function > , pub set_user_finalizer : :: std :: option :: Option < unsafe extern "C" fn ( env : * mut emacs_env , uptr : emacs_value , fin : emacs_finalizer_function ) > , pub vec_get : :: std :: option :: Option < unsafe extern "C" fn ( env : * mut emacs_env , vec : emacs_value , i : isize ) -> emacs_value > , pub vec_set : :: std :: option :: Option < unsafe extern "C" fn ( env : * mut emacs_env , vec : emacs_value , i : isize , val : emacs_value ) > , pub vec_size : :: std :: option :: Option < unsafe extern "C" fn ( env : * mut emacs_env , vec : emacs_value ) -> isize > , } # [ test ] fn bindgen_test_layout_emacs_env_25 ( ) { assert_eq ! ( :: std :: mem :: size_of :: < emacs_env_25 > ( ) , 232usize , concat ! ( "Size of: " , stringify ! ( emacs_env_25 ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < emacs_env_25 > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( emacs_env_25 ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < emacs_env_25 > ( ) ) ) . size as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( emacs_env_25 ) , "::" , stringify ! ( size ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < emacs_env_25 > ( ) ) ) . private_members as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( emacs_env_25 ) , "::" , stringify ! ( private_members ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < emacs_env_25 > ( ) ) ) . make_global_ref as * const _ as usize } , 16usize , concat ! ( "Offset of field: " , stringify ! ( emacs_env_25 ) , "::" , stringify ! ( make_global_ref ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < emacs_env_25 > ( ) ) ) . free_global_ref as * const _ as usize } , 24usize , concat ! ( "Offset of field: " , stringify ! ( emacs_env_25 ) , "::" , stringify ! ( free_global_ref ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < emacs_env_25 > ( ) ) ) . non_local_exit_check as * const _ as usize } , 32usize , concat ! ( "Offset of field: " , stringify ! ( emacs_env_25 ) , "::" , stringify ! ( non_local_exit_check ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < emacs_env_25 > ( ) ) ) . non_local_exit_clear as * const _ as usize } , 40usize , concat ! ( "Offset of field: " , stringify ! ( emacs_env_25 ) , "::" , stringify ! ( non_local_exit_clear ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < emacs_env_25 > ( ) ) ) . non_local_exit_get as * const _ as usize } , 48usize , concat ! ( "Offset of field: " , stringify ! ( emacs_env_25 ) , "::" , stringify ! ( non_local_exit_get ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < emacs_env_25 > ( ) ) ) . non_local_exit_signal as * const _ as usize } , 56usize , concat ! ( "Offset of field: " , stringify ! ( emacs_env_25 ) , "::" , stringify ! ( non_local_exit_signal ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < emacs_env_25 > ( ) ) ) . non_local_exit_throw as * const _ as usize } , 64usize , concat ! ( "Offset of field: " , stringify ! ( emacs_env_25 ) , "::" , stringify ! ( non_local_exit_throw ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < emacs_env_25 > ( ) ) ) . make_function as * const _ as usize } , 72usize , concat ! ( "Offset of field: " , stringify ! ( emacs_env_25 ) , "::" , stringify ! ( make_function ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < emacs_env_25 > ( ) ) ) . funcall as * const _ as usize } , 80usize , concat ! ( "Offset of field: " , stringify ! ( emacs_env_25 ) , "::" , stringify ! ( funcall ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < emacs_env_25 > ( ) ) ) . intern as * const _ as usize } , 88usize , concat ! ( "Offset of field: " , stringify ! ( emacs_env_25 ) , "::" , stringify ! ( intern ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < emacs_env_25 > ( ) ) ) . type_of as * const _ as usize } , 96usize , concat ! ( "Offset of field: " , stringify ! ( emacs_env_25 ) , "::" , stringify ! ( type_of ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < emacs_env_25 > ( ) ) ) . is_not_nil as * const _ as usize } , 104usize , concat ! ( "Offset of field: " , stringify ! ( emacs_env_25 ) , "::" , stringify ! ( is_not_nil ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < emacs_env_25 > ( ) ) ) . eq as * const _ as usize } , 112usize , concat ! ( "Offset of field: " , stringify ! ( emacs_env_25 ) , "::" , stringify ! ( eq ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < emacs_env_25 > ( ) ) ) . extract_integer as * const _ as usize } , 120usize , concat ! ( "Offset of field: " , stringify ! ( emacs_env_25 ) , "::" , stringify ! ( extract_integer ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < emacs_env_25 > ( ) ) ) . make_integer as * const _ as usize } , 128usize , concat ! ( "Offset of field: " , stringify ! ( emacs_env_25 ) , "::" , stringify ! ( make_integer ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < emacs_env_25 > ( ) ) ) . extract_float as * const _ as usize } , 136usize , concat ! ( "Offset of field: " , stringify ! ( emacs_env_25 ) , "::" , stringify ! ( extract_float ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < emacs_env_25 > ( ) ) ) . make_float as * const _ as usize } , 144usize , concat ! ( "Offset of field: " , stringify ! ( emacs_env_25 ) , "::" , stringify ! ( make_float ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < emacs_env_25 > ( ) ) ) . copy_string_contents as * const _ as usize } , 152usize , concat ! ( "Offset of field: " , stringify ! ( emacs_env_25 ) , "::" , stringify ! ( copy_string_contents ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < emacs_env_25 > ( ) ) ) . make_string as * const _ as usize } , 160usize , concat ! ( "Offset of field: " , stringify ! ( emacs_env_25 ) , "::" , stringify ! ( make_string ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < emacs_env_25 > ( ) ) ) . make_user_ptr as * const _ as usize } , 168usize , concat ! ( "Offset of field: " , stringify ! ( emacs_env_25 ) , "::" , stringify ! ( make_user_ptr ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < emacs_env_25 > ( ) ) ) . get_user_ptr as * const _ as usize } , 176usize , concat ! ( "Offset of field: " , stringify ! ( emacs_env_25 ) , "::" , stringify ! ( get_user_ptr ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < emacs_env_25 > ( ) ) ) . set_user_ptr as * const _ as usize } , 184usize , concat ! ( "Offset of field: " , stringify ! ( emacs_env_25 ) , "::" , stringify ! ( set_user_ptr ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < emacs_env_25 > ( ) ) ) . get_user_finalizer as * const _ as usize } , 192usize , concat ! ( "Offset of field: " , stringify ! ( emacs_env_25 ) , "::" , stringify ! ( get_user_finalizer ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < emacs_env_25 > ( ) ) ) . set_user_finalizer as * const _ as usize } , 200usize , concat ! ( "Offset of field: " , stringify ! ( emacs_env_25 ) , "::" , stringify ! ( set_user_finalizer ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < emacs_env_25 > ( ) ) ) . vec_get as * const _ as usize } , 208usize , concat ! ( "Offset of field: " , stringify ! ( emacs_env_25 ) , "::" , stringify ! ( vec_get ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < emacs_env_25 > ( ) ) ) . vec_set as * const _ as usize } , 216usize , concat ! ( "Offset of field: " , stringify ! ( emacs_env_25 ) , "::" , stringify ! ( vec_set ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < emacs_env_25 > ( ) ) ) . vec_size as * const _ as usize } , 224usize , concat ! ( "Offset of field: " , stringify ! ( emacs_env_25 ) , "::" , stringify ! ( vec_size ) ) ) ; } extern "C" {
 # [ link_name = "\u{1}_emacs_module_init" ] 
 pub fn emacs_module_init ( ert : * mut emacs_runtime , ) -> ::libc :: c_int ; 
} # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct emacs_runtime_private { pub _address : u8 , } # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct emacs_env_private { pub _address : u8 , }